diff options
Diffstat (limited to 'zshfunc/safe-restore-ssh-agent-socket')
-rw-r--r-- | zshfunc/safe-restore-ssh-agent-socket | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/zshfunc/safe-restore-ssh-agent-socket b/zshfunc/safe-restore-ssh-agent-socket new file mode 100644 index 0000000..f4b9751 --- /dev/null +++ b/zshfunc/safe-restore-ssh-agent-socket @@ -0,0 +1,11 @@ +## vim:ft=zsh:foldmethod=marker + +if [ "$SSH_AUTH_SOCK" != "" ] && [ "$SSH_AUTH_SOCK" != "$HOME/.ssh-auth-sock" ] ; then + if ! [ -e "$HOME/.ssh-auth-sock" ] || [ "`readlink $HOME/.ssh-auth-sock`" != "$SSH_AUTH_SOCK" ]; then + echo "Setting ~/.ssh-auth-sock." + rm -f "$HOME/.ssh-auth-sock" + ln -s "$SSH_AUTH_SOCK" "$HOME/.ssh-auth-sock" + fi +elif [ "$SSH_AUTH_SOCK" = "" ] && [ -e "$HOME/.ssh-auth-sock" ]; then + SSH_AUTH_SOCK="$HOME/.ssh-auth-sock"; export SSH_AUTH_SOCK +fi |