diff options
Diffstat (limited to 'gocryptfs_main')
-rwxr-xr-x | gocryptfs_main/gocryptfs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/gocryptfs_main/gocryptfs b/gocryptfs_main/gocryptfs new file mode 100755 index 0000000..7b61e60 --- /dev/null +++ b/gocryptfs_main/gocryptfs @@ -0,0 +1,29 @@ +#!/bin/bash + +# Shell wrapper that runs the gocryptfs process in the background +# and exits on SIGUSR1 + +set -eu + +trap "exit 0" SIGUSR1 +shopt -u huponexit + +dir=$(dirname $(readlink -f "$0")) +main="$dir/gocryptfs_main" + +# echo "0=$0 dir=$dir main=$main" + +if [ ! -x "$main" ] +then + echo "Error: gocryptfs_main executable not found. Run ./all.bash to build it." + exit 1 +fi + +# A backgrounded process gets /dev/null as stdin per default. +# Explicitly set stdin to the current stdin so we can ask the user for input. +"$main" $* < /proc/self/fd/0 & wait +# The "& wait" is neccessary because bash only processes signals when +# executing internal commands + +# We did not get USR1 - something went wrong +exit 1 |