fix rbw-pinentry-keyring not saving passwords correctly and not working with 2fa codes and add auto setup #178
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR solves 3 things:
the rbw-pinentry-keyring setup command did not support passwords that includes a space. The cut command only retrieved the first word of the password and thus skipping the other words.
cut -c3-
cuts from the 3rd char 'D ' to the end of the line.So pinentry output like
D this is a passphrase
will be cut tothis is a passphrase
.Can be tested with the following commands:
old:
echo "D this is a passphrase" | cut -d' ' -f2
new:
echo "D this is a passphrase" | cut -c3-
Also the script doesnt work with 2fa codes because the secret-tool is called for the 2fa code instead of the system pinentry. This PR also fixes that bug.
This PR also removes the setup command and it will auto setup if the password is not found in the keyring. Also there is a new command added:
clear
, with this command the password can be cleared from the keyring in case it needs to be updated or removed.