Merge pull request #935 from leafnode/upstream

check if ssh-agent really exists
This commit is contained in:
Hylke Bons 2012-08-27 06:04:31 -07:00
commit 4fdb65b2f3

View file

@ -191,12 +191,22 @@ namespace SparkleShare {
private void StartSSH ()
{
string auth_sock = Environment.GetEnvironmentVariable ("SSH_AUTH_SOCK");
string auth_agent_pid = Environment.GetEnvironmentVariable("SSH_AGENT_PID");
if (!string.IsNullOrEmpty (auth_sock)) {
if (!string.IsNullOrEmpty (auth_agent_pid)) {
SparkleLogger.LogInfo("Controller", "Trying existing ssh-agent with PID=" + auth_agent_pid);
this.ssh_agent_pid = Convert.ToInt32(auth_agent_pid);
try
{
Process ssh_agent = Process.GetProcessById(this.ssh_agent_pid);
SparkleLogger.LogInfo("Controller", "Using existing ssh-agent with PID=" + this.ssh_agent_pid);
return;
}
catch (ArgumentException e)
{
SparkleLogger.LogInfo("Controller", "ssh-agent with PID=" + auth_agent_pid + " does not exist. Starting a new one");
}
}
Process process = new Process ();
process.StartInfo.FileName = "ssh-agent";