Commit 367c1903e9aefd07de0d5be98c56640d13e3420d

Etienne Samson 2013-07-10T10:29:09

Add some missing error messages.

diff --git a/src/transports/ssh.c b/src/transports/ssh.c
index f2480b2..bb38438 100644
--- a/src/transports/ssh.c
+++ b/src/transports/ssh.c
@@ -353,24 +353,31 @@ static int _git_ssh_setup_conn(
 				t->owner->cred_acquire_payload) < 0)
 			goto on_error;
 	} else {
-        goto on_error;
-    }
+		giterr_set(GITERR_NET, "Cannot set up SSH connection without credentials");
+		goto on_error;
+	}
 	assert(t->cred);
 	
 	if (!user) {
 		user = git__strdup(default_user);
 	}
 	
-	if (_git_ssh_session_create(&session, s->socket) < 0)
+	if (_git_ssh_session_create(&session, s->socket) < 0) {
+		giterr_set(GITERR_NET, "Failed to initialize SSH session");
 		goto on_error;
-	
-    if (_git_ssh_authenticate_session(session, user, t->cred) < 0)
+	}
+
+    if (_git_ssh_authenticate_session(session, user, t->cred) < 0) {
+		giterr_set(GITERR_NET, "Failed to authenticate SSH session");
 		goto on_error;
-	
+	}
+
 	channel = libssh2_channel_open_session(session);
-	if (!channel)
-        goto on_error;
-	
+	if (!channel) {
+		giterr_set(GITERR_NET, "Failed to open SSH channel");
+		goto on_error;
+	}
+
 	libssh2_channel_set_blocking(channel, 1);
 	
 	s->session = session;