diff options
author | Daniel Stenberg <daniel@haxx.se> | 2021-03-23 11:17:32 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2021-03-23 11:21:31 +0100 |
commit | 87f8277cf5cf8b7138451a02de357967642725c3 (patch) | |
tree | 876f8cb629ae14eb59b7b0d1a4075c3925537304 | |
parent | 45d1e24b74434e5f337f0c10a9d8d1eb489aac0f (diff) | |
download | curl-bagder/libssh2-keybd-interactive.tar.gz |
libssh2: kdb_callback: get the right struct pointerbagder/libssh2-keybd-interactive
After the recent conn/data refactor in this source file, this function
was mistakenly still getting the old struct pointer which would lead to
crash on servers with keyboard-interactive auth enabled.
Follow-up to a304051620b92e12b (shipped in 7.75.0)
Reported-by: Christian Schmitz
Fixes #6695
-rw-r--r-- | lib/vssh/libssh2.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/vssh/libssh2.c b/lib/vssh/libssh2.c index 891e945f7..9d188d058 100644 --- a/lib/vssh/libssh2.c +++ b/lib/vssh/libssh2.c @@ -184,7 +184,7 @@ kbd_callback(const char *name, int name_len, const char *instruction, LIBSSH2_USERAUTH_KBDINT_RESPONSE *responses, void **abstract) { - struct connectdata *conn = (struct connectdata *)*abstract; + struct Curl_easy *data = (struct Curl_easy *)*abstract; #ifdef CURL_LIBSSH2_DEBUG fprintf(stderr, "name=%s\n", name); @@ -199,11 +199,11 @@ kbd_callback(const char *name, int name_len, const char *instruction, (void)instruction_len; #endif /* CURL_LIBSSH2_DEBUG */ if(num_prompts == 1) { + struct connectdata *conn = data->conn; responses[0].text = strdup(conn->passwd); responses[0].length = curlx_uztoui(strlen(conn->passwd)); } (void)prompts; - (void)abstract; } /* kbd_callback */ static CURLcode sftp_libssh2_error_to_CURLE(unsigned long err) |