diff options
author | intrigeri <intrigeri@boum.org> | 2005-12-27 19:38:15 +0000 |
---|---|---|
committer | intrigeri <intrigeri@boum.org> | 2005-12-27 19:38:15 +0000 |
commit | e8c8a32ac25f4346f3fa5e21e24801fcf15d3b54 (patch) | |
tree | 95cb3fdd6403df614aed4ef6fc967e807bf8cb3c | |
parent | 0a60cd6e3bed75e6507713beb785846b51866484 (diff) | |
download | backupninja-e8c8a32ac25f4346f3fa5e21e24801fcf15d3b54.tar.gz backupninja-e8c8a32ac25f4346f3fa5e21e24801fcf15d3b54.tar.bz2 |
dup: now possible to use different keys to sign and encrypt
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | examples/example.dup | 10 | ||||
-rw-r--r-- | handlers/dup | 17 |
3 files changed, 21 insertions, 8 deletions
@@ -20,6 +20,8 @@ version 0.9.2 -- unreleased a nice menu to choose the Vservers to backup (thanks to lib/vserver) added man/ninjahelper.1 man page + duplicity handler: now possible to use different keys to encrypt and + sign version 0.9.1 -- November 05 2005 rearranged source so that it is relocatable with autotools diff --git a/examples/example.dup b/examples/example.dup index 7db7771..88ac28c 100644 --- a/examples/example.dup +++ b/examples/example.dup @@ -19,13 +19,17 @@ nicelevel = 19 password = a_very_complicated_passphrase # default is no, for backward compatibility with backupninja <= 0.5. -# when set to yes, encryptkey option must be set below. +# when set to yes, either signkey or encryptkey option must be set below. sign = yes -# key ID used for data encryption and, optionnally, signing. -# if not set, local root's default gpg key is used. +# key ID used for data encryption. +# if not set, local root's default GnuPG key is used. encryptkey = 04D9EA79 +# key ID used for data signing. +# if not set, encryptkey will be used. +#signkey = 04D9EA79 + ###################################################### ## source section ## (where the files to be backed up are coming from) diff --git a/handlers/dup b/handlers/dup index 79be2fc..c28619d 100644 --- a/handlers/dup +++ b/handlers/dup @@ -11,6 +11,7 @@ setsection gpg getconf password getconf sign no getconf encryptkey +getconf signkey setsection source getconf include @@ -79,11 +80,17 @@ scpoptions="$sshoptions" execstr="$options --no-print-statistics --scp-command 'scp $scpoptions' --ssh-command 'ssh $sshoptions' " -if [ "$encryptkey" == "" ]; then - [ "$sign" != "yes" ] || fatal "encryptkey option must be set when signing." -else - execstr="${execstr}--encrypt-key $encryptkey " - [ "$sign" != "yes" ] || execstr="${execstr}--sign-key $encryptkey " +# if encryptkey is set, add --encrypt-key to the command-line +[ -z "$encryptkey" ] || execstr="${execstr}--encrypt-key $encryptkey " +# if signkey is not set, set it to encryptkey +[ -n "$signkey" ] || signkey="$encryptkey" +# if needed, add --sign-key to command-line +if [ "$sign" == "yes" ]; then + if [ -n "$signkey" ]; then + execstr="${execstr}--sign-key $signkey " + else + fatal "Either encryptkey or signkey option must be set when signing." + fi fi if [ "$keep" != "yes" ]; then |