conn: add 'attach' to protocol handler, make libssh2 use it

The libssh2 backend has SSH session associated with the connection but
the callback context is the easy handle, so when a connection gets
attached to a transfer, the protocol handler now allows for a custom
function to get used to set things up correctly.

Reported-by: Michael O'Farrell
Fixes #6898
Closes #7078
This commit is contained in:
Daniel Stenberg 2021-05-17 08:54:00 +02:00
parent 904b27d18d
commit 0c55fbab45
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
24 changed files with 66 additions and 0 deletions

View file

@ -896,6 +896,8 @@ void Curl_attach_connnection(struct Curl_easy *data,
data->conn = conn;
Curl_llist_insert_next(&conn->easyq, conn->easyq.tail, data,
&data->conn_queue);
if(conn->handler->attach)
conn->handler->attach(data, conn);
}
static int waitconnect_getsock(struct connectdata *conn,