diff options
Diffstat (limited to '.local/bin/ssh-askpass.sh')
-rwxr-xr-x | .local/bin/ssh-askpass.sh | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/.local/bin/ssh-askpass.sh b/.local/bin/ssh-askpass.sh new file mode 100755 index 0000000..879a882 --- /dev/null +++ b/.local/bin/ssh-askpass.sh @@ -0,0 +1,16 @@ +#!/bin/sh +# Remember to export SSH_ASKPASS=~/.local/bin/ssh-askpass.sh +RESULT=$(pinentry-curses --ttytype=xterm-color --lc-ctype=en_US.UTF8 --ttyname=/dev/tty <<END | grep -E '^(D|ERR)' +SETDESC Enter your SSH password: +SETPROMPT +GETPIN +END +) + +if [ "$RESULT" = "ERR 111 canceled" ]; then + exit 255 +else + length=$(printf "%s" "$RESULT" | wc -c) + length=$((length)) + echo "$RESULT" : '..' | cut -c 3-"$length" +fi |