mirror of
https://github.com/curl/curl.git
synced 2026-08-25 14:53:34 +03:00
cfilter: remove 'blocking' connect handling
Remove `blocking` argument from cfilter's connect method. Implement blocking behaviour in Curl_conn_connect() instead for all filter chains. Update filters implementations. Several of which did never use the paramter (QUIC for example). Simplifies connect handling in TLS filters that no longer need to loop Fixed a blocking connect call in FTP when waiting on a socket accept() which only worked because the filter did not implement it. Closes #16397
This commit is contained in:
parent
654f8cb5f3
commit
a1850ad7de
29 changed files with 250 additions and 850 deletions
|
|
@ -877,13 +877,12 @@ static CURLcode cf_connect_start(struct Curl_cfilter *cf,
|
|||
|
||||
static CURLcode cf_msh3_connect(struct Curl_cfilter *cf,
|
||||
struct Curl_easy *data,
|
||||
bool blocking, bool *done)
|
||||
bool *done)
|
||||
{
|
||||
struct cf_msh3_ctx *ctx = cf->ctx;
|
||||
struct cf_call_data save;
|
||||
CURLcode result = CURLE_OK;
|
||||
|
||||
(void)blocking;
|
||||
if(cf->connected) {
|
||||
*done = TRUE;
|
||||
return CURLE_OK;
|
||||
|
|
|
|||
|
|
@ -2453,7 +2453,7 @@ static CURLcode cf_connect_start(struct Curl_cfilter *cf,
|
|||
|
||||
static CURLcode cf_ngtcp2_connect(struct Curl_cfilter *cf,
|
||||
struct Curl_easy *data,
|
||||
bool blocking, bool *done)
|
||||
bool *done)
|
||||
{
|
||||
struct cf_ngtcp2_ctx *ctx = cf->ctx;
|
||||
CURLcode result = CURLE_OK;
|
||||
|
|
@ -2468,7 +2468,7 @@ static CURLcode cf_ngtcp2_connect(struct Curl_cfilter *cf,
|
|||
|
||||
/* Connect the UDP filter first */
|
||||
if(!cf->next->connected) {
|
||||
result = Curl_conn_cf_connect(cf->next, data, blocking, done);
|
||||
result = Curl_conn_cf_connect(cf->next, data, done);
|
||||
if(result || !*done)
|
||||
return result;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1718,7 +1718,7 @@ out:
|
|||
|
||||
static CURLcode cf_osslq_connect(struct Curl_cfilter *cf,
|
||||
struct Curl_easy *data,
|
||||
bool blocking, bool *done)
|
||||
bool *done)
|
||||
{
|
||||
struct cf_osslq_ctx *ctx = cf->ctx;
|
||||
CURLcode result = CURLE_OK;
|
||||
|
|
@ -1733,7 +1733,7 @@ static CURLcode cf_osslq_connect(struct Curl_cfilter *cf,
|
|||
|
||||
/* Connect the UDP filter first */
|
||||
if(!cf->next->connected) {
|
||||
result = Curl_conn_cf_connect(cf->next, data, blocking, done);
|
||||
result = Curl_conn_cf_connect(cf->next, data, done);
|
||||
if(result || !*done)
|
||||
return result;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1378,7 +1378,7 @@ static CURLcode cf_quiche_verify_peer(struct Curl_cfilter *cf,
|
|||
|
||||
static CURLcode cf_quiche_connect(struct Curl_cfilter *cf,
|
||||
struct Curl_easy *data,
|
||||
bool blocking, bool *done)
|
||||
bool *done)
|
||||
{
|
||||
struct cf_quiche_ctx *ctx = cf->ctx;
|
||||
CURLcode result = CURLE_OK;
|
||||
|
|
@ -1390,7 +1390,7 @@ static CURLcode cf_quiche_connect(struct Curl_cfilter *cf,
|
|||
|
||||
/* Connect the UDP filter first */
|
||||
if(!cf->next->connected) {
|
||||
result = Curl_conn_cf_connect(cf->next, data, blocking, done);
|
||||
result = Curl_conn_cf_connect(cf->next, data, done);
|
||||
if(result || !*done)
|
||||
return result;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue