ohmyzsh/plugins/ssh-agent/ssh-agent.plugin.zsh
Jonas Pfenniger b481acdc0a Don't start ssh_agent is SSH_AUTH_SOCK is set
OSX and Gnome use their own agent
2011-05-31 02:20:31 +02:00

24 lines
504 B
Bash

# Based on code from Joseph M. Reagle
# http://www.cygwin.com/ml/cygwin/2001-06/msg00537.html
local SSH_ENV=$HOME/.ssh/environment-$HOST
function start_agent {
/usr/bin/env ssh-agent | sed 's/^echo/#echo/' > ${SSH_ENV}
chmod 600 ${SSH_ENV}
. ${SSH_ENV} > /dev/null
/usr/bin/ssh-add;
}
function has_agent {
[ -n "${SSH_AUTH_SOCK}" ] && [ -r "${SSH_AUTH_SOCK}" ]
return $?
}
if ! has_agent && [ -f "${SSH_ENV}" ] ; then
. ${SSH_ENV} > /dev/null
fi
if ! has_agent ; then
start_agent
fi