Curl_http(), decomplexify

Split out adding of individual request headers into a switch. Check
the connection http version only on fresh connections, use separate
methods.

Add TE: header directly without allocation. Add bit for indicating
Connection: header has been added and custom headers should not do
that again.

Closes #18444
This commit is contained in:
Stefan Eissing 2025-09-01 15:52:30 +02:00 committed by Daniel Stenberg
parent e00cb001c6
commit 4d040c71d7
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
25 changed files with 345 additions and 319 deletions

View file

@ -1122,7 +1122,6 @@ struct UrlState {
#ifndef CURL_DISABLE_RTSP
char *rtsp_transport;
#endif
char *te; /* TE: request header */
/* transfer credentials */
char *user;
@ -1178,6 +1177,11 @@ struct UrlState {
internal use and the user does not have ownership of the
handle. */
BIT(http_ignorecustom); /* ignore custom method from now */
#ifndef CURL_DISABLE_HTTP
BIT(http_hd_te); /* Added HTTP header TE: */
BIT(http_hd_upgrade); /* Added HTTP header Upgrade: */
BIT(http_hd_h2_settings); /* Added HTTP header H2Settings: */
#endif
};
/*