]> gitweb.fluxo.info Git - keyringer.git/commitdiff
Action recrypt now can re-encrypt the whole repository
authorSilvio Rhatto <rhatto@riseup.net>
Fri, 27 May 2011 13:26:10 +0000 (10:26 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Fri, 27 May 2011 13:26:10 +0000 (10:26 -0300)
README
share/keyringer/recrypt

diff --git a/README b/README
index 792e64e1e67ba7e692e2cb0df3ab0db1c7601440..534044e5c58a6dc6cc26207baf7e6fa6af4b80a1 100644 (file)
--- a/README
+++ b/README
@@ -88,9 +88,9 @@ Decrypting a key (only to stdout)
 
     keyringer <keyring> decrypt <file>
 
-Re-encrypting a key
+Re-encrypting a key or the whole repository
 
-    keyringer <keyring> recrypt <file>
+    keyringer <keyring> recrypt [file]
 
 Appending information to a key
 
index a7607e07a0547b99de7734aab0d07059d6601da3..f4cc9deb66437ee5143a6668fa5d62dde9c1a1cb 100755 (executable)
@@ -7,8 +7,20 @@
 LIB="`dirname $0`/../../lib/keyringer/functions"
 source "$LIB" || exit 1
 
-# Get file
-keyringer_get_file "$2"
+function keyringer_recrypt {
+  # Get file
+  keyringer_get_file "$1"
 
-# Recrypt
-gpg --use-agent -d "$KEYDIR/$FILE" | gpg --use-agent --armor -e -s $(keyringer_recipients "$RECIPIENTS") > "$KEYDIR/$FILE"
+  # Recrypt
+  gpg --use-agent -d "$KEYDIR/$FILE" | gpg --use-agent --armor -e -s $(keyringer_recipients "$RECIPIENTS") > "$KEYDIR/$FILE"
+}
+
+if [ ! -z "$2" ]; then
+  keyringer_recrypt $2
+else
+  cd $KEYDIR && find | grep -v '^.$' | while read file; do
+    if [ ! -d "$KEYDIR/$file" ]; then
+      keyringer_recrypt "$file"
+    fi
+  done
+fi