diff options
Diffstat (limited to 'abs/extra-testing/consolekit/pam-foreground-compat.ck')
-rw-r--r-- | abs/extra-testing/consolekit/pam-foreground-compat.ck | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/abs/extra-testing/consolekit/pam-foreground-compat.ck b/abs/extra-testing/consolekit/pam-foreground-compat.ck new file mode 100644 index 0000000..7f6b122 --- /dev/null +++ b/abs/extra-testing/consolekit/pam-foreground-compat.ck @@ -0,0 +1,16 @@ +#!/bin/sh +TAGDIR=/var/run/console + +[ -n "$CK_SESSION_USER_UID" ] || exit 1 + +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 |