The variable `conn->httpversion` was used for several purposes and it was unclear at which time the value represents what. - rename `conn->httpversion` to `conn->httpversion_seen` This makes clear that the variable only records the last HTTP version seen on the connection - if any. And that it no longer is an indication of what version to use. - Change Alt-Svc handling to no longer modify `conn->httpversion` but set `data->state.httpwant` for influencing the HTTP version to use on a transfer. - Add `data->req.httpversion_sent` to have a record of what HTTP version was sent in a request - Add connection filter type CF_TYPE_HTTP - Add filter query `CF_QUERY_HTTP_VERSION` to ask what HTTP filter version is in place - Lookup filters HTTP version instead of using `conn->httpversion` Test test_12_05 now switches to HTTP/1.1 correctly and the expectations have been fixed. Removed the connection fitler "is_httpN()" checks and using the version query instead. Closes #16073 |
||
|---|---|---|
| .. | ||
| .checksrc | ||
| curl_msh3.c | ||
| curl_msh3.h | ||
| curl_ngtcp2.c | ||
| curl_ngtcp2.h | ||
| curl_osslq.c | ||
| curl_osslq.h | ||
| curl_quiche.c | ||
| curl_quiche.h | ||
| vquic_int.h | ||
| vquic-tls.c | ||
| vquic-tls.h | ||
| vquic.c | ||
| vquic.h | ||