libgocryptfs/gocryptfs
Jakob Unterwurzacher 022a6968ae Implement proper daemonization
The shell wrapper sends gocryptfs into the background and waits for SIGUSR1
2015-10-06 00:31:18 +02:00

24 lines
609 B
Bash
Executable File

#!/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 "$0")
main="$dir/gocryptfs_main/gocryptfs_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