tcreate command restored for backward compatibility - tomb - the crypto undertaker HTML git clone git://parazyd.org/tomb.git DIR Log DIR Files DIR Refs DIR README DIR LICENSE --- DIR commit a5d09a055977ae544f940dd8e5fcca14a531c820 DIR parent 825f7ed687c6a0facc8bad7ccc14e3d10e52015f HTML Author: Jaromil <jaromil@dyne.org> Date: Sat, 30 Mar 2013 18:59:34 +0100 create command restored for backward compatibility tthe new mechanism to create tombs is in place (dig/forge/lock), but we still wrap it with a create command for backward compatibility. Diffstat: M src/tomb | 35 ++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) --- DIR diff --git a/src/tomb b/src/tomb t@@ -800,6 +800,7 @@ dig_tomb() { # we will first touch the file and set permissions: this way, even if interrupted, permissions are right touch ${tombdir}/${tombfile} chmod 0600 "${tombdir}/${tombfile}" + chown $_uid:$_gid "${tombdir}/${tombfile}" $DD if=/dev/urandom bs=4k count=${tombsize_4k} of=${tombdir}/${tombfile} if [ $? = 0 -a -e ${tombdir}/${tombfile} ]; then t@@ -972,7 +973,34 @@ lock_tomb_with_key() { _success "Your tomb is ready in ${tombdir}/${tombfile} and secured with key ${tombkey}" } + +# backward compatibility +create_tomb() { + if ! [ $1 ]; then + _warning "no tomb name specified for creation" + return 1 + fi + dig_tomb ${=PARAM} + { test $? = 0 } || { die "Failed to dig tomb, operation aborted." } + + tombfile=`basename $1` + tombdir=`dirname $1` + # make sure the file has a .tomb extension + tombname=${tombfile%%\.*} + tombfile=${tombname}.tomb + + forge_key ${tombfile}.key + { test $? = 0 } || { die "Failed to forge key, operation aborted." } + + lock_tomb_with_key ${tombfile} -l ${tombfile}.key + { test $? = 0 } || { die "Failed to lock tomb with key, operation aborted." } + + yes "Tomb $tombname succesfully created" + ls -l ${tombfile}* +} + + #internal use #$1 is the keyfile we are checking is_valid_key() { t@@ -2140,7 +2168,12 @@ main() { check_priv lock_tomb_with_key ${=PARAM} ;; - + # backward compat + create) + check_priv + create_tomb ${=PARAM} + ;; + mount|open) check_priv mount_tomb $PARAM[1] $PARAM[2]