summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJay Satiro <raysatiro@yahoo.com>2023-04-25 15:31:33 -0400
committerJay Satiro <raysatiro@yahoo.com>2023-04-26 15:04:29 -0400
commit21575b26fe33099e087b8beaac9bc43fa8597874 (patch)
tree1dbe7df22cc437a2e1bc99fbd3effb5899d39ba6
parent53523d7dcc3ad627f0c079f05ab4d2f0d954eb00 (diff)
downloadcurl-21575b26fe33099e087b8beaac9bc43fa8597874.tar.gz
libssh2: fix crash in keyboard callback
- Always set the libssh2 'abstract' user-pointer to the libcurl easy handle associated with the ssh session, so it is always passed to the ssh keyboard callback. Prior to this change and since 8b5f100 (precedes curl 8.0.0), if libcurl was built without CURL_DEBUG then it could crash during the ssh auth phase due to a null dereference in the ssh keyboard callback. Reported-by: Andreas Falkenhahn Fixes https://github.com/curl/curl/pull/11024 Closes https://github.com/curl/curl/pull/11026
-rw-r--r--lib/vssh/libssh2.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/vssh/libssh2.c b/lib/vssh/libssh2.c
index f2e5352d1..bfcc94e16 100644
--- a/lib/vssh/libssh2.c
+++ b/lib/vssh/libssh2.c
@@ -3274,7 +3274,7 @@ static CURLcode ssh_connect(struct Curl_easy *data, bool *done)
my_libssh2_free,
my_libssh2_realloc, data);
#else
- sshc->ssh_session = libssh2_session_init();
+ sshc->ssh_session = libssh2_session_init_ex(NULL, NULL, NULL, data);
#endif
if(!sshc->ssh_session) {
failf(data, "Failure initialising ssh session");