diff options
Diffstat (limited to 'main/consolekit2/pam-foreground-compat.ck')
-rw-r--r-- | main/consolekit2/pam-foreground-compat.ck | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/main/consolekit2/pam-foreground-compat.ck b/main/consolekit2/pam-foreground-compat.ck new file mode 100644 index 0000000000..c9255503c4 --- /dev/null +++ b/main/consolekit2/pam-foreground-compat.ck @@ -0,0 +1,17 @@ +#!/bin/sh +TAGDIR=/var/run/console + +[ -n "$CK_SESSION_USER_UID" ] || exit 1 +[ "$CK_SESSION_IS_LOCAL" = "true" ] || exit 0 + +TAGFILE="$TAGDIR/`getent passwd $CK_SESSION_USER_UID | cut -f 1 -d:`" + +if [ "$1" = "session_added" ]; then + mkdir -p "$TAGDIR" + echo "$CK_SESSION_ID" >> "$TAGFILE" +fi + +if [ "$1" = "session_removed" ] && [ -e "$TAGFILE" ]; then + sed -i "\%^$CK_SESSION_ID\$%d" "$TAGFILE" + [ -s "$TAGFILE" ] || rm -f "$TAGFILE" +fi |