--- pam_mount-0.17/scripts/passwdehd +++ pam_mount-0.17/scripts/passwdehd @@ -53,6 +53,11 @@ if [ ! -f "$CONF" ]; then exit 1 fi +if ! MYTEMP=`mktemp -t "passwdehd.XXXXXX"`; then + # mktemp should have spewed a good error message, just leave + exit 1 +fi + GROUP=`id -gn "$USER"`; REGEX="^volume[[:space:]]\+\($USER\|*\|@$GROUP\)[[:space:]]\+"; LINE=`grep -m1 "$REGEX" "$CONF"`; @@ -94,8 +99,8 @@ export NEW_EFSK_PASSWORD cp "$KEYPATH" "$KEYPATH.old"; openssl enc -d -$CIPHER -pass env:OLD_EFSK_PASSWORD -in "$KEYPATH" | \ - openssl enc -$CIPHER -pass env:NEW_EFSK_PASSWORD >"/tmp/passwdehd.$$"; -if ! mv "/tmp/passwdehd.$$" "$KEYPATH"; then - echo "Move the key file manually from /tmp/passwdehd.$$"; + openssl enc -$CIPHER -pass env:NEW_EFSK_PASSWORD >"$MYTEMP"; +if ! mv "$MYTEMP" "$KEYPATH"; then + echo "Move the key file manually from $MYTEMP"; echo "to $KEYPATH and set the permissions correctly."; fi;