curl/ssh-log-the-libssh2-error-message-when-ssh-session-s.patch
2019-09-30 10:36:29 -04:00

37 lines
1.2 KiB
Diff

From b095a1ca63ab4962e7256616ff02607c5a77e089 Mon Sep 17 00:00:00 2001
From: JDepooter <joel.depooter@safe.com>
Date: Wed, 16 Jan 2019 17:18:20 -0800
Subject: [PATCH 456/557] ssh: log the libssh2 error message when ssh session
startup fails
When a ssh session startup fails, it is useful to know why it has
failed. This commit changes the message from:
"Failure establishing ssh session"
to something like this, for example:
"Failure establishing ssh session: -5, Unable to exchange encryption keys"
Closes #3481
---
lib/ssh.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/ssh.c b/lib/ssh.c
index f3b0a58..8c68adc 100644
--- a/lib/ssh.c
+++ b/lib/ssh.c
@@ -667,7 +667,10 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
break;
}
if(rc) {
- failf(data, "Failure establishing ssh session");
+ char *err_msg = NULL;
+ (void)libssh2_session_last_error(sshc->ssh_session, &err_msg, NULL, 0);
+ failf(data, "Failure establishing ssh session: %d, %s", rc, err_msg);
+
state(conn, SSH_SESSION_FREE);
sshc->actualcode = CURLE_FAILED_INIT;
break;
--
1.8.3.1