Loading lib/conncache.c +2 −4 Original line number Diff line number Diff line Loading @@ -56,7 +56,7 @@ static CURLcode bundle_create(struct SessionHandle *data, return CURLE_OUT_OF_MEMORY; (*cb_ptr)->num_connections = 0; (*cb_ptr)->server_supports_pipelining = FALSE; (*cb_ptr)->multiuse = BUNDLE_UNKNOWN; (*cb_ptr)->conn_list = Curl_llist_alloc((curl_llist_dtor) conn_llist_dtor); if(!(*cb_ptr)->conn_list) { Loading Loading @@ -205,10 +205,8 @@ CURLcode Curl_conncache_add_conn(struct conncache *connc, return result; key = hashkey(conn); if(!key) { bundle_destroy(new_bundle); if(!key) return CURLE_OUT_OF_MEMORY; } rc = conncache_add_bundle(data->state.conn_cache, key, new_bundle); free(key); Loading lib/conncache.h +6 −2 Original line number Diff line number Diff line Loading @@ -30,9 +30,13 @@ struct conncache { struct timeval last_cleanup; }; #define BUNDLE_NO_MULTIUSE -1 #define BUNDLE_UNKNOWN 0 /* initial value */ #define BUNDLE_PIPELINING 1 #define BUNDLE_MULTIPLEX 2 struct connectbundle { bool server_supports_pipelining; /* TRUE if server supports pipelining, set after first response */ int multiuse; /* supports multi-use */ size_t num_connections; /* Number of connections in the bundle */ struct curl_llist *conn_list; /* The connectdata members of the bundle */ }; Loading lib/http.c +4 −4 Original line number Diff line number Diff line Loading @@ -3375,7 +3375,7 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data, /* HTTP/2 cannot blacklist multiplexing since it is a core functionality of the protocol */ conn->bundle->server_supports_pipelining = TRUE; conn->bundle->multiuse = BUNDLE_MULTIPLEX; } else if(conn->httpversion >= 11 && !conn->bits.close) { Loading @@ -3390,7 +3390,7 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data, cb_ptr = conn->bundle; if(cb_ptr) { if(!Curl_pipeline_site_blacklisted(data, conn)) cb_ptr->server_supports_pipelining = TRUE; cb_ptr->multiuse = BUNDLE_PIPELINING; } } Loading Loading @@ -3474,9 +3474,9 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data, char *server_name = Curl_copy_header_value(k->p); /* Turn off pipelining if the server version is blacklisted */ if(conn->bundle && conn->bundle->server_supports_pipelining) { if(conn->bundle && (conn->bundle->multiuse == BUNDLE_PIPELINING)) { if(Curl_pipeline_server_blacklisted(data, server_name)) conn->bundle->server_supports_pipelining = FALSE; conn->bundle->multiuse = BUNDLE_NO_MULTIUSE; } free(server_name); } Loading lib/http2.c +2 −2 Original line number Diff line number Diff line Loading @@ -32,7 +32,7 @@ #include "curl_base64.h" #include "rawstr.h" #include "multiif.h" #include "bundles.h" #include "conncache.h" /* The last #include files should be: */ #include "curl_memory.h" Loading Loading @@ -1196,7 +1196,7 @@ CURLcode Curl_http2_setup(struct connectdata *conn) conn->bits.multiplex = TRUE; /* at least potentially multiplexed */ conn->httpversion = 20; conn->bundle->server_supports_pipelining = TRUE; conn->bundle->multiuse = BUNDLE_MULTIPLEX; return CURLE_OK; } Loading lib/multi.c +0 −5 Original line number Diff line number Diff line Loading @@ -2730,11 +2730,6 @@ size_t Curl_multi_max_total_connections(struct Curl_multi *multi) return multi ? multi->max_total_connections : 0; } size_t Curl_multi_max_pipeline_length(struct Curl_multi *multi) { return multi ? multi->max_pipeline_length : 0; } curl_off_t Curl_multi_content_length_penalty_size(struct Curl_multi *multi) { return multi ? multi->content_length_penalty_size : 0; Loading Loading
lib/conncache.c +2 −4 Original line number Diff line number Diff line Loading @@ -56,7 +56,7 @@ static CURLcode bundle_create(struct SessionHandle *data, return CURLE_OUT_OF_MEMORY; (*cb_ptr)->num_connections = 0; (*cb_ptr)->server_supports_pipelining = FALSE; (*cb_ptr)->multiuse = BUNDLE_UNKNOWN; (*cb_ptr)->conn_list = Curl_llist_alloc((curl_llist_dtor) conn_llist_dtor); if(!(*cb_ptr)->conn_list) { Loading Loading @@ -205,10 +205,8 @@ CURLcode Curl_conncache_add_conn(struct conncache *connc, return result; key = hashkey(conn); if(!key) { bundle_destroy(new_bundle); if(!key) return CURLE_OUT_OF_MEMORY; } rc = conncache_add_bundle(data->state.conn_cache, key, new_bundle); free(key); Loading
lib/conncache.h +6 −2 Original line number Diff line number Diff line Loading @@ -30,9 +30,13 @@ struct conncache { struct timeval last_cleanup; }; #define BUNDLE_NO_MULTIUSE -1 #define BUNDLE_UNKNOWN 0 /* initial value */ #define BUNDLE_PIPELINING 1 #define BUNDLE_MULTIPLEX 2 struct connectbundle { bool server_supports_pipelining; /* TRUE if server supports pipelining, set after first response */ int multiuse; /* supports multi-use */ size_t num_connections; /* Number of connections in the bundle */ struct curl_llist *conn_list; /* The connectdata members of the bundle */ }; Loading
lib/http.c +4 −4 Original line number Diff line number Diff line Loading @@ -3375,7 +3375,7 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data, /* HTTP/2 cannot blacklist multiplexing since it is a core functionality of the protocol */ conn->bundle->server_supports_pipelining = TRUE; conn->bundle->multiuse = BUNDLE_MULTIPLEX; } else if(conn->httpversion >= 11 && !conn->bits.close) { Loading @@ -3390,7 +3390,7 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data, cb_ptr = conn->bundle; if(cb_ptr) { if(!Curl_pipeline_site_blacklisted(data, conn)) cb_ptr->server_supports_pipelining = TRUE; cb_ptr->multiuse = BUNDLE_PIPELINING; } } Loading Loading @@ -3474,9 +3474,9 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data, char *server_name = Curl_copy_header_value(k->p); /* Turn off pipelining if the server version is blacklisted */ if(conn->bundle && conn->bundle->server_supports_pipelining) { if(conn->bundle && (conn->bundle->multiuse == BUNDLE_PIPELINING)) { if(Curl_pipeline_server_blacklisted(data, server_name)) conn->bundle->server_supports_pipelining = FALSE; conn->bundle->multiuse = BUNDLE_NO_MULTIUSE; } free(server_name); } Loading
lib/http2.c +2 −2 Original line number Diff line number Diff line Loading @@ -32,7 +32,7 @@ #include "curl_base64.h" #include "rawstr.h" #include "multiif.h" #include "bundles.h" #include "conncache.h" /* The last #include files should be: */ #include "curl_memory.h" Loading Loading @@ -1196,7 +1196,7 @@ CURLcode Curl_http2_setup(struct connectdata *conn) conn->bits.multiplex = TRUE; /* at least potentially multiplexed */ conn->httpversion = 20; conn->bundle->server_supports_pipelining = TRUE; conn->bundle->multiuse = BUNDLE_MULTIPLEX; return CURLE_OK; } Loading
lib/multi.c +0 −5 Original line number Diff line number Diff line Loading @@ -2730,11 +2730,6 @@ size_t Curl_multi_max_total_connections(struct Curl_multi *multi) return multi ? multi->max_total_connections : 0; } size_t Curl_multi_max_pipeline_length(struct Curl_multi *multi) { return multi ? multi->max_pipeline_length : 0; } curl_off_t Curl_multi_content_length_penalty_size(struct Curl_multi *multi) { return multi ? multi->content_length_penalty_size : 0; Loading