diff options
-rw-r--r-- | ChangeLog | 2 | ||||
-rwxr-xr-x | lib/keyringer/actions/edit | 14 |
2 files changed, 15 insertions, 1 deletions
@@ -1,5 +1,7 @@ 2014-05-16 - Silvio Rhatto <rhatto@riseup.net> + Workaround for open/edit action returning instantaneously (#49) + Use 'nobackup' and 'nowritebackup' if VIM is set as $EDITOR (#50) Find: rollback: use find+grep instead of 'find -iname' (#53) diff --git a/lib/keyringer/actions/edit b/lib/keyringer/actions/edit index 576bb67..63017d5 100755 --- a/lib/keyringer/actions/edit +++ b/lib/keyringer/actions/edit @@ -38,11 +38,23 @@ fi # Prompt echo "Press any key to open the decrypted data with $APP, Ctrl-C to abort" -echo "WARNING: please make sure that $APP doesn't leak data to external applications os files" +echo "WARNING: please make sure that $APP doesn't leak data to external applications or files" read key $APP "$TMPWORK" + +# Wait for background process to finish wait +# Workaround for some applications running in client/server mode, handling open file requests +# to a daemon and exiting immediatelly, making keyringer guess the editing is over and the file +# must be encrypted again (See #49). +# +# Thus, we cannot just wipe the file and exit keyringer, as the user might have a buffered copy +# of the unencrypted file in the application, which can lead to information leakage if the user +# saves the file and leaves the editor. +echo "Press any key when done using the file and you're sure that $APP is closed." +read -n 1 + # Encrypt again export KEYRINGER_ADD_EXTENSION=false keyringer_exec encrypt "$BASEDIR" "$FILE" "$TMPWORK" |