]> gitweb.fluxo.info Git - keyringer.git/commitdiff
Recrypt only when decrypt is successful (#6)
authorSilvio Rhatto <rhatto@riseup.net>
Tue, 26 Feb 2013 16:01:34 +0000 (13:01 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Tue, 26 Feb 2013 16:01:34 +0000 (13:01 -0300)
share/keyringer/decrypt
share/keyringer/recrypt

index adc11346a4de6e437df0c45704651740f3118256..bab9b34c4dad2cb256ee78ce18d7658b4df6bb4b 100755 (executable)
@@ -12,3 +12,6 @@ keyringer_get_file "$2"
 
 # Decrypt
 $GPG --quiet --use-agent -d "$KEYDIR/$FILE"
+
+# Exit
+exit "$?"
index cbf1af9e926817492d54c84980a7929b637334d9..fc166038dec402b90f8c1d528ecb7a336420e741 100755 (executable)
@@ -14,6 +14,16 @@ function keyringer_recrypt {
   # Set recipients file
   keyringer_set_recipients "$FILE"
 
+  # Test decryption
+  $GPG --use-agent -d "$KEYDIR/$FILE" > /dev/null
+
+  err="$?"
+
+  if [ "$err" != "0" ]; then
+    echo "$BASENAME: decryption failed. Can't recrypt."
+    exit "$err"
+  fi
+
   # Recrypt
   $GPG --use-agent -d "$KEYDIR/$FILE" | $GPG --use-agent --armor -e -s $(keyringer_recipients "$RECIPIENTS_FILE") > "$KEYDIR/$FILE"