From 98ffb534d441e610bc02edef52c5e455901b21ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakobus=20Sch=C3=BCrz?= Date: Sat, 28 Nov 2020 16:12:37 +0100 Subject: [PATCH] lazy unmount, use XDG_RUNTIME_DIR decrypt mount --- functions.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/functions.sh b/functions.sh index 60f6bca..f34db95 100755 --- a/functions.sh +++ b/functions.sh @@ -127,9 +127,12 @@ mencfs () { return 2 fi + logdebug "ENCDIR: $ENCDIR" [ -z ${PKEY+x} ] && { EXIT; return 3; } [ -z ${ENCDIR+x} ] && { EXIT; return 4; } + [ -z "${DESTDIR+x}" ] && [ -n "${XDG_RUNTIME_DIR}" ] && DESTDIR="${XDG_RUNTIME_DIR}/decrypted/$(basename $ENCDIR| tr '[:lower:]' '[:upper:]'| sed -e 's/^\.//')" [ -z ${DESTDIR+x} ] && DESTDIR="$(dirname $ENCDIR)/$(basename $ENCDIR| tr '[:lower:]' '[:upper:]'| sed -e 's/^\.//')" + logdebug "DESTDIR: $DESTDIR" [ -d "$DESTDIR" ] || mkdir -p "$DESTDIR" $PASS "${PKEY}" 1>/dev/null 2>&1 || { logerror "entry $PKEY does not exist in passwordsotre"; return 5; } local ENCFS_PASSWORD=$($PASS "${PKEY}" | head -n1) @@ -165,14 +168,14 @@ uencfs () { else loginfo "umount encrypted directory" $1 >&2 sync - $FUSERMOUNT -u "$1" + $FUSERMOUNT -z -u "$1" fi else loginfo "no arguments given. Umount all mounted encfs-dirs" >&2 for i in $(mount|grep encfs|sed -e 's/^encfs on \(.*\)\ type.*$/\1/');do loginfo "$FUSERMOUNT -u $i" sync - $FUSERMOUNT -u "$i" + $FUSERMOUNT -z -u "$i" done EXIT return 1