mirror of
https://codeberg.org/mclemens/qrz.is.git
synced 2024-12-28 04:06:29 -05:00
added patch code into post
This commit is contained in:
parent
a52fd73d21
commit
18bf678719
@ -11,4 +11,58 @@ I use Pass (https://www.passwordstore.org/) to store and synchronize all my pass
|
||||
|
||||
When I use Pass via SSH on a remote system in order to retrieve a password, I cannot make use of it’s clipboard feature. In order to output the password without actually displaying it, I wrote the following patch which prints the password in red on a red background while still being able to be manually copied to the clipboard:
|
||||
|
||||
<https://gist.github.com/exitnode/73065c7ecf3c2e5bb77cef5a8563b86e>
|
||||
```
|
||||
src/password-store.sh | 19 +++++++++++++------
|
||||
1 file changed, 13 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/src/password-store.sh b/src/password-store.sh
|
||||
index d535a74..f4e1cfe 100755
|
||||
--- a/src/password-store.sh
|
||||
+++ b/src/password-store.sh
|
||||
@@ -223,8 +223,8 @@ cmd_usage() {
|
||||
List passwords.
|
||||
$PROGRAM find pass-names...
|
||||
List passwords that match pass-names.
|
||||
- $PROGRAM [show] [--clip,-c] pass-name
|
||||
- Show existing password and optionally put it on the clipboard.
|
||||
+ $PROGRAM [show] [--clip,-c] [--hidden,-h] pass-name
|
||||
+ Show existing password and optionally put it on the clipboard or hide it.
|
||||
If put on the clipboard, it will be cleared in $CLIP_TIME seconds.
|
||||
$PROGRAM grep search-string
|
||||
Search for password files containing search-string when decrypted.
|
||||
@@ -294,23 +294,30 @@ cmd_init() {
|
||||
}
|
||||
|
||||
cmd_show() {
|
||||
- local opts clip=0
|
||||
- opts="$($GETOPT -o c -l clip -n "$PROGRAM" -- "$@")"
|
||||
+ local opts clip=0 hidden=0
|
||||
+ opts="$($GETOPT -o ch -l clip,hidden -n "$PROGRAM" -- "$@")"
|
||||
local err=$?
|
||||
eval set -- "$opts"
|
||||
while true; do case $1 in
|
||||
-c|--clip) clip=1; shift ;;
|
||||
+ -h|--hidden) hidden=1; shift ;;
|
||||
--) shift; break ;;
|
||||
esac done
|
||||
|
||||
- [[ $err -ne 0 ]] && die "Usage: $PROGRAM $COMMAND [--clip,-c] [pass-name]"
|
||||
+ [[ $err -ne 0 ]] && die "Usage: $PROGRAM $COMMAND [--clip,-c] [--hidden,-h] [pass-name]"
|
||||
|
||||
local path="$1"
|
||||
local passfile="$PREFIX/$path.gpg"
|
||||
check_sneaky_paths "$path"
|
||||
if [[ -f $passfile ]]; then
|
||||
if [[ $clip -eq 0 ]]; then
|
||||
- $GPG -d "${GPG_OPTS[@]}" "$passfile" || exit $?
|
||||
+ if [[ $hidden -eq 0 ]]; then
|
||||
+ $GPG -d "${GPG_OPTS[@]}" "$passfile" || exit $?
|
||||
+ else
|
||||
+ local pass="$($GPG -d "${GPG_OPTS[@]}" "$passfile" | head -n 1)"
|
||||
+ [[ -n $pass ]] || exit 1
|
||||
+ echo -e "\e[0;31;41m$pass\e[0m"
|
||||
+ fi
|
||||
else
|
||||
local pass="$($GPG -d "${GPG_OPTS[@]}" "$passfile" | head -n 1)"
|
||||
[[ -n $pass ]] || exit 1
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user