tomb

the crypto undertaker
git clone git://parazyd.org/tomb.git
Log | Files | Refs | README | LICENSE

commit 1068033e932dc0e06650b7bb7feec3c4defa465a
parent 45c5b53cc46043c2632a09a7f364f8eac765a287
Author: hellekin <hellekin@dyne.org>
Date:   Sat, 27 Dec 2014 08:13:15 -0300

Address non-zero exit code on mount attempt

Diffstat:
Mtomb | 17++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/tomb b/tomb @@ -1753,9 +1753,24 @@ mount_tomb() { sudo mkdir -p $tombmount # Default mount options are overridden with the -o switch - { option_is_set -o } && MOUNTOPTS="$(option_value -o)" + { option_is_set -o } && { + local oldmountopts=$MOUNTOPTS + MOUNTOPTS="$(option_value -o)" } + # TODO: safety check MOUNTOPTS + # safe_mount_options && \ sudo mount -o $MOUNTOPTS /dev/mapper/${mapper} ${tombmount} + # Clean up if the mount failed + [[ $? == 0 ]] || { + _warning "Error mounting ::1 mapper:: on ::2 tombmount::" $mapper $tombmount + [[ $oldmountopts != $MOUNTOPTS ]] && \ + _warning "Are mount options '::1 mount options::' valid?" $MOUNTOPTS + # TODO: move cleanup to _endgame() + [[ -d $tombmount ]] && rmdir $tombmount + [[ -e /dev/mapper/$mapper ]] && sudo cryptsetup luksClose $mapper + # The loop is taken care of in _endgame() + _failure "Cannot mount ::1 tomb name::" $TOMBNAME + } sudo chown $UID:$GID ${tombmount} sudo chmod 0711 ${tombmount}