Reworking this plugin to work around a keychain function

This commit is contained in:
Simon Gomizelj 2011-12-01 09:26:26 -05:00
commit 1f659b16db

View file

@ -1,6 +1,4 @@
local ssh_env=$HOME/.ssh/environment-$HOST function keychain_start_agent()
function start_agent()
{ {
local -a identities local -a identities
@ -15,23 +13,23 @@ function start_agent()
} }
function keychain() { function keychain() {
local ssh_env=$HOME/.ssh/environment-$HOST
case $1 in case $1 in
"start") ;; "start")
if [[ -f $ssh_env ]]; then
source $ssh_env >/dev/null
ps -p $SSH_AGENT_PID >/dev/null || keychain_start_agent
else
keychain_start_agent;
fi
;;
"kill") "kill")
ssh-agent -k echo "Stopping agent"
ssh-agent -k >/dev/null
;; ;;
esac esac
} }
zstyle -a :omz:plugins:keychain autostart state zstyle -a :omz:plugins:keychain autostart state
if [[ $state == "on" ]]; then [[ $state == "on" ]] && keychain start
if [[ -f $ssh_env ]]; then
source $ssh_env >/dev/null
ps -p $SSH_AGENT_PID >/dev/null || start_agent
else
start_agent;
fi
fi
unfunction start_agent
unset ssh_env