diff options
Diffstat (limited to 'zsh/functions')
| -rw-r--r-- | zsh/functions/op-ssh-add | 7 | ||||
| -rw-r--r-- | zsh/functions/vault | 7 |
2 files changed, 12 insertions, 2 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} diff --git a/zsh/functions/vault b/zsh/functions/vault index abe0158..8196772 100644 --- a/zsh/functions/vault +++ b/zsh/functions/vault @@ -5,8 +5,13 @@ case $1 in hdiutil unmount -quiet $2 ;; open) - op get item ${2:t} --fields password --session $(op signin --raw) \ + local session=$(op signin --raw) + if [[ -z ${session} ]]; then + return 1 + fi + op get item ${2:t} --fields password --session ${session} \ | hdiutil attach -quiet -stdinpass $2 + op signout --session ${session} ;; *) return 1 |
