From b481acdc0afeb82368e99a7e0b141d82afa13866 Mon Sep 17 00:00:00 2001 From: Jonas Pfenniger Date: Fri, 27 May 2011 15:23:12 +0200 Subject: [PATCH] Don't start ssh_agent is SSH_AUTH_SOCK is set OSX and Gnome use their own agent --- plugins/ssh-agent/ssh-agent.plugin.zsh | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/plugins/ssh-agent/ssh-agent.plugin.zsh b/plugins/ssh-agent/ssh-agent.plugin.zsh index 0efc4546f..c295cbc57 100644 --- a/plugins/ssh-agent/ssh-agent.plugin.zsh +++ b/plugins/ssh-agent/ssh-agent.plugin.zsh @@ -10,14 +10,15 @@ function start_agent { /usr/bin/ssh-add; } -# Source SSH settings, if applicable +function has_agent { + [ -n "${SSH_AUTH_SOCK}" ] && [ -r "${SSH_AUTH_SOCK}" ] + return $? +} -if [ -f "${SSH_ENV}" ]; then +if ! has_agent && [ -f "${SSH_ENV}" ] ; then . ${SSH_ENV} > /dev/null - ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || { - start_agent; - } -else - start_agent; fi +if ! has_agent ; then + start_agent +fi