commit 634720b40c0a9f643a2bf5fee560d9e9dd5f6e15
parent d57994fcc3a0339060541069b0b3b2d88a5e2fdb
Author: boyska <piuttosto@logorroici.org>
Date:   Thu,  2 Feb 2012 23:44:43 +0100
Merge: changed legacy code, added modelines
Diffstat:
| M | src/tomb |  |  | 95 | +++++++++++++++++++++++++++++++++++++++++-------------------------------------- | 
1 file changed, 49 insertions(+), 46 deletions(-)
diff --git a/src/tomb b/src/tomb
@@ -413,8 +413,8 @@ EOF
 # {{{ - HELPERS FOR KEYS
 # {{{   - Encode Key
 encode_key() {
-    tombkey=$CMD2
-    imagefile=$CMD3
+    tombkey=$1
+    imagefile=$2
 
     file $tombkey | grep PGP > /dev/null
     if [ $? != 0 ]; then
@@ -469,8 +469,8 @@ encode_key() {
 # }}}
 # {{{   - Decode Key
 decode_key() {
-    tombname=$CMD2
-    imagefile=$CMD3
+    tombname=$1
+    imagefile=$2
     res=1
 
     file $imagefile | grep JPEG > /dev/null
@@ -604,18 +604,19 @@ exec_safe_post_hooks() {
 # {{{ TOMB SUB-COMMANDS
 
 # {{{ - Create
+# $1 is the tomb path
 
 create_tomb() {
-    _message "Commanded to create tomb $CMD2"
+    _message "Commanded to create tomb $1"
     if ! option_is_set -f; then check_swap; fi
 
-    if ! [ ${CMD2} ]; then
+    if ! [ $1 ]; then
         _warning "no tomb name specified for creation"
         return 1
     fi
 
-    tombfile=`basename ${CMD2}`
-    tombdir=`dirname ${CMD2}`
+    tombfile=`basename $1`
+    tombdir=`dirname $1`
     # make sure the file has a .tomb extension
     tombname=${tombfile%%\.*}
     tombfile=${tombname}.tomb
@@ -779,11 +780,12 @@ create_tomb() {
 # }}}
 # {{{ - Open
 
+# $1 = tombfile $2(optional) = mountpoint
 mount_tomb() {
-    _message "Commanded to open tomb $CMD2"
+    _message "Commanded to open tomb $1"
     if ! option_is_set -f; then check_swap; fi
 
-    if ! [ ${CMD2} ]; then
+    if ! [ ${1} ]; then
         _warning "no tomb name specified for creation"
         return 1
     fi
@@ -795,12 +797,12 @@ mount_tomb() {
     local tombfile
     local tombdir
     local tombname
-    tombfile=`basename ${CMD2}`
-    tombdir=`dirname ${CMD2}`
+    tombfile=`basename ${1}`
+    tombdir=`dirname ${1}`
     # check file type (if its a Luks fs)
     file ${tombdir}/${tombfile} | grep -i 'luks encrypted file' 2>&1 >/dev/null
     if [ $? != 0 ]; then
-	_warning "$CMD2 is not a valid tomb file, operation aborted"
+	_warning "$1 is not a valid tomb file, operation aborted"
 	return 1
     fi
     tombname=${tombfile%%\.*}
@@ -827,14 +829,14 @@ mount_tomb() {
 	return 1
     fi
 
-    if ! [ $CMD3 ]; then
+    if ! [ $2 ]; then
         tombmount=/media/${tombfile}
         _message "mountpoint not specified, using default: $tombmount"
-    elif ! [ -x $CMD3 ]; then
-        _warning "mountpoint $CMD3 doesn't exist, operation aborted."
+    elif ! [ -x $2 ]; then
+        _warning "mountpoint $2 doesn't exist, operation aborted."
         return 1
     else
-	tombmount=${CMD3}
+	tombmount=$2
     fi
 
     # check if its already open
@@ -1118,13 +1120,14 @@ umount_tomb() {
 # }}}
 # }}}
 # {{{ - Change Password
+# $1 is the tomb key path
 
 # change tomb key password
 change_passwd() {
-    _message "Commanded to change password for tomb key $CMD2"
+    _message "Commanded to change password for tomb key $1"
     if ! option_is_set -f; then check_swap; fi
 
-    local keyfile="$CMD2"
+    local keyfile="$1"
 
     # check the keyfile
     if ! [ -r $keyfile ]; then
@@ -1221,17 +1224,18 @@ change_passwd() {
 # }}}
 # {{{ - Resize
 # resize tomb file size
+# $1 is tomb path
 resize_tomb() {
-    _message "Commanded to resize tomb $CMD2 to $opts[-s] megabytes"
-    if ! [ ${CMD2} ]; then
+    _message "Commanded to resize tomb $1 to $opts[-s] megabytes"
+    if ! [ $1 ]; then
         _failure "No tomb name specified for resizing"
-    elif ! [ -r "${CMD2}" ]; then
-        _failure "Cannot find ${CMD2}"
+    elif ! [ -r "$1" ]; then
+        _failure "Cannot find $1"
     fi
 
     local c tombpass tombkey
-    local tombfile=`basename ${CMD2}`
-    local tombdir=`dirname ${CMD2}`
+    local tombfile=`basename $1`
+    local tombdir=`dirname $1`
     # make sure the file has a .tomb extension
     local tombname=${tombfile%%\.*}
     tombfile=${tombname}.tomb
@@ -1258,7 +1262,7 @@ resize_tomb() {
 
     local tmp_resize=`safe_filename tmbrsz`
     local newtombsize=$opts[-s]
-    local oldtombsize=`stat -c %s "${CMD2}" 2>/dev/null`
+    local oldtombsize=`stat -c %s "$1" 2>/dev/null`
     local mounted_tomb=`mount -l |
         awk -vtomb="[$tombname]" '/^\/dev\/mapper\/tomb/ { if($7==tomb) print $1 }'`
 
@@ -1291,14 +1295,14 @@ resize_tomb() {
 	_failure "Error creating the extra resize $tmp_resize, operation aborted."
     fi
     
-    cat "${tmp_resize}" >> "${CMD2}"
+    cat "${tmp_resize}" >> "$1"
     ${=WIPE} "${tmp_resize}"
     
     local nstloop=`losetup -f`
     if [ $? = 255 ]; then
         _failure "too many tomb opened. Please close any of them to open another tomb"
     fi
-    losetup -f "${CMD2}"
+    losetup -f "$1"
     
     local mapdate=`date +%s`
     local mapper="tomb.${tombname}.${mapdate}.`basename $nstloop`"
@@ -1356,8 +1360,9 @@ resize_tomb() {
 # }}}
 # {{{ - List
 # list all tombs mounted in a readable format
+# $1 is optional, to specify a tomb
 list_tombs() {
-    if [ $CMD2 ]; then
+    if [ $1 ]; then
 	# list a specific tomb
 	mounted_tombs=`mount -l |
     awk -vtomb="[$1]" '/^\/dev\/mapper\/tomb/ { if($7==tomb) print $1 ";" $3 ";" $5 ";" $6 ";" $7 }'`
@@ -1374,7 +1379,7 @@ list_tombs() {
 
     if ! [ $mounted_tombs ]; then
 	if [ $1 ]; then
-	    die "There seems to be no open tomb engraved as [$CMD2]"
+	    die "There seems to be no open tomb engraved as [$1]"
 	else
 	    die "I can't see any open tomb, may they all rest in peace."
 	fi
@@ -1726,35 +1731,31 @@ main() {
         autoload colors; colors
     fi
 
-    CMD=$subcommand
-    CMD2=$PARAM[1]
-    CMD3=$PARAM[2]
-
-    xxx "Tomb command: $CMD $CMD2 $CMD3"
+    xxx "Tomb command: $subcommand ${PARAM}"
 
     case "$subcommand" in
 	create)
 	    check_priv
-	    create_tomb
+	    create_tomb $PARAM[1]
 	    ;;
 	mount|open)
 	    check_priv
-	    mount_tomb
+	    mount_tomb $PARAM[1] $PARAM[2]
 	    ;;
 	umount|close|slam)
 	    check_priv
 	    [ "$subcommand" =  "slam" ] && SLAM=1
-	    umount_tomb ${CMD2}
+	    umount_tomb $PARAM[1]
 	    ;;
 	passwd)
 	    check_priv
-	    change_passwd ${CMD2}
+	    change_passwd $PARAM[1]
 	    ;;
 	list)
-	    list_tombs ${CMD2}
+	    list_tombs $PARAM[1]
 	    ;;
 	status)
-	    launch_status ${CMD2}
+	    launch_status $PARAM[1]
 	    ;;
 	help)
 	    usage
@@ -1770,17 +1771,17 @@ main() {
  		_warning "steghide not installed. Cannot exhume your key"
 		return 1
 	    fi
-		 decode_key $PARAM[1] 
+	    decode_key $PARAM[1] $PARAM[2]
 	    ;;
 	resize)
         check_priv
-        resize_tomb
+        resize_tomb $PARAM[1]
         ;;
 	# internal commands useful to developers
 	'source')   return 0 ;;
 	install)    check_priv ; install_tomb ;;
-	askpass)    ask_password ${CMD2} ${CMD3} ;;
-	 mktemp) safe_dir $PARAM[1] ;;
+	askpass)    ask_password $PARAM[1] $PARAM[2] ;;
+	mktemp)     safe_dir $PARAM[1] ;;
 	translate)  generate_translatable_strings ;;
       check) check_command $PARAM[1] ;;
 	__default)
@@ -1799,7 +1800,7 @@ EOF
 	    usage
 	    ;;
 	*)
-	    _warning "command \"$CMD\" not recognized"
+	    _warning "command \"$subcommand\" not recognized"
 	    _message "try -h for help"
 	    return 1
 	    ;;
@@ -1817,3 +1818,5 @@ if [[ $ret != 0 ]]; then #this "if" seems useless, but avoid source tomb source 
 fi
 # }}}
 
+# -*- tab-width: 4; indent-tabs-mode:nil; -*-
+# vim: set shiftwidth=4 expandtab: