From: Silvio Rhatto Date: Fri, 27 May 2011 13:26:10 +0000 (-0300) Subject: Action recrypt now can re-encrypt the whole repository X-Git-Tag: 0.2.1~87 X-Git-Url: https://gitweb.fluxo.info/?a=commitdiff_plain;h=733df1aa85e7cc0ccd23624c071387617053f049;p=keyringer.git Action recrypt now can re-encrypt the whole repository --- diff --git a/README b/README index 792e64e..534044e 100644 --- a/README +++ b/README @@ -88,9 +88,9 @@ Decrypting a key (only to stdout) keyringer decrypt -Re-encrypting a key +Re-encrypting a key or the whole repository - keyringer recrypt + keyringer recrypt [file] Appending information to a key diff --git a/share/keyringer/recrypt b/share/keyringer/recrypt index a7607e0..f4cc9de 100755 --- a/share/keyringer/recrypt +++ b/share/keyringer/recrypt @@ -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