mirror of
https://github.com/curl/curl.git
synced 2026-08-25 14:13:34 +03:00
ngtcp2: share common functionality
Share common functions/structs between ngtcp2 HTTP/3 and the proxy version. Fix bugs in proxy implementation when it comes to stream and pollset handling and transfer lifetimes. Curl_multi_xfer_sockbuf_borrow: work without multi When a connection gets shutdown by a share, the easy handle used is share->admin and it does not have a multi handle. In that case let Curl_multi_xfer_sockbuf_borrow() allocate a buffer to be freed on release. This happens when a TLS filter sends its last notify through a HTTP/3 proxy tunnel. Closes #21871
This commit is contained in:
parent
4fcf9c8f59
commit
f924489b25
43 changed files with 3254 additions and 4970 deletions
10
lib/ftp.c
10
lib/ftp.c
|
|
@ -1390,10 +1390,13 @@ static CURLcode ftp_state_use_port(struct Curl_easy *data,
|
|||
ftp_state(data, ftpc, FTP_STOP);
|
||||
}
|
||||
else {
|
||||
/* successfully set up the listen socket filter. SSL needed? */
|
||||
/* successfully set up the listen socket filter. SSL needed?
|
||||
* Use the control connections origin for cert verification. */
|
||||
if(conn->bits.ftp_use_data_ssl && data->set.ftp_use_port &&
|
||||
!Curl_conn_is_ssl(conn, SECONDARYSOCKET)) {
|
||||
result = Curl_ssl_cfilter_add(data, conn, SECONDARYSOCKET);
|
||||
result = Curl_ssl_cfilter_add(
|
||||
data, Curl_conn_get_origin(conn, FIRSTSOCKET),
|
||||
conn, SECONDARYSOCKET);
|
||||
}
|
||||
conn->bits.do_more = FALSE;
|
||||
Curl_pgrsTime(data, TIMER_STARTACCEPT);
|
||||
|
|
@ -3196,7 +3199,8 @@ static CURLcode ftp_pp_statemachine(struct Curl_easy *data,
|
|||
/* this was BLOCKING, keep it so for now */
|
||||
bool done;
|
||||
if(!Curl_conn_is_ssl(conn, FIRSTSOCKET)) {
|
||||
result = Curl_ssl_cfilter_add(data, conn, FIRSTSOCKET);
|
||||
result = Curl_ssl_cfilter_add(
|
||||
data, Curl_conn_get_origin(conn, FIRSTSOCKET), conn, FIRSTSOCKET);
|
||||
if(result) {
|
||||
/* we failed and bail out */
|
||||
return CURLE_USE_SSL_FAILED;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue