diff options
| -rwxr-xr-x | src/password-store.sh | 1 | ||||
| -rwxr-xr-x | tests/t0300-reencryption.sh | 9 | 
2 files changed, 10 insertions, 0 deletions
| diff --git a/src/password-store.sh b/src/password-store.sh index 7264ffc..d89d455 100755 --- a/src/password-store.sh +++ b/src/password-store.sh @@ -108,6 +108,7 @@ reencrypt_path() {  	local prev_gpg_recipients="" gpg_keys="" current_keys="" index passfile  	local groups="$($GPG $PASSWORD_STORE_GPG_OPTS --list-config --with-colons | grep "^cfg:group:.*")"  	while read -r -d "" passfile; do +		[[ -L $passfile ]] && continue  		local passfile_dir="${passfile%/*}"  		passfile_dir="${passfile_dir#$PREFIX}"  		passfile_dir="${passfile_dir#/}" diff --git a/tests/t0300-reencryption.sh b/tests/t0300-reencryption.sh index 6d15364..3c88987 100755 --- a/tests/t0300-reencryption.sh +++ b/tests/t0300-reencryption.sh @@ -87,6 +87,15 @@ test_expect_success 'Reencryption subfolder multiple keys, move, deinit' '  	[[ $(canonicalize_gpg_keys $KEY3 $KEY4 $KEY2) == "$(gpg_keys_from_encrypted_file "$PASSWORD_STORE_DIR/anotherfolder2/anotherfolder/cred1.gpg")" ]]  ' +test_expect_success 'Reencryption skips links' ' +	ln -s "$PASSWORD_STORE_DIR/folder/cred1.gpg" "$PASSWORD_STORE_DIR/folder/linked_cred.gpg" && +	[[ -L $PASSWORD_STORE_DIR/folder/linked_cred.gpg ]] && +	git add "$PASSWORD_STORE_DIR/folder/linked_cred.gpg" && +	git commit "$PASSWORD_STORE_DIR/folder/linked_cred.gpg" -m "Added linked cred" && +	"$PASS" init -p folder $KEY3 && +	[[ -L $PASSWORD_STORE_DIR/folder/linked_cred.gpg ]] +' +  #TODO: test with more varieties of move and copy!  test_expect_success 'Password lived through all transformations' ' |