summaryrefslogtreecommitdiff
path: root/zsh/functions/op-ssh-add
diff options
context:
space:
mode:
authorGrégoire Duchêne <gduchene@awhk.org>2020-12-22 13:57:02 +0000
committerGrégoire Duchêne <gduchene@awhk.org>2020-12-22 13:57:02 +0000
commit9f76237aa43f06945029310863860ead8d68b942 (patch)
tree03e21b1e610ab8825c6c18b89a4b09976c85bcd8 /zsh/functions/op-ssh-add
parent070094c8819d646dea4fa8e8b8659f54b54a52de (diff)
zsh: Remove 1Password sessions when we're done
Diffstat (limited to 'zsh/functions/op-ssh-add')
-rw-r--r--zsh/functions/op-ssh-add7
1 files changed, 6 insertions, 1 deletions
diff --git a/zsh/functions/op-ssh-add b/zsh/functions/op-ssh-add
index d64efd9..012424f 100644
--- a/zsh/functions/op-ssh-add
+++ b/zsh/functions/op-ssh-add
@@ -18,11 +18,16 @@ if [[ -z ${pub} ]]; then
return $?
fi
+local session=$(op signin --raw)
+if [[ -z ${session} ]]; then
+ return 1
+fi
zmodload zsh/zpty
zpty ssh $(which -p ssh-add) $@
zpty -w ssh $(op get item \
$(cut -d' ' -f3 ${pub}) \
--fields password \
- --session $(op signin --raw))
+ --session ${session})
zpty -r ssh
zpty -d ssh
+op signout --session ${session}