]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
http2: use nghttp2_session_upgrade2 instead of nghttp2_session_upgrade
authorPeng-Yu Chen <pengyu@libstarrify.so>
Mon, 10 May 2021 22:50:27 +0000 (23:50 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Tue, 11 May 2021 05:58:14 +0000 (07:58 +0200)
Following the upstream deprecation of nghttp2_session_upgrade.

Also provides further checks for requests with the HEAD method.

Closes #7041

lib/http2.c

index 03c101e357e246688eadcdde81a93f49daf9fef9..661a4cbab0450e2b33230f18f25553856afc8572 100644 (file)
@@ -2273,10 +2273,10 @@ CURLcode Curl_http2_switched(struct Curl_easy *data,
     /* stream 1 is opened implicitly on upgrade */
     stream->stream_id = 1;
     /* queue SETTINGS frame (again) */
-    rv = nghttp2_session_upgrade(httpc->h2, httpc->binsettings,
-                                 httpc->binlen, NULL);
+    rv = nghttp2_session_upgrade2(httpc->h2, httpc->binsettings, httpc->binlen,
+                                  data->state.httpreq == HTTPREQ_HEAD, NULL);
     if(rv) {
-      failf(data, "nghttp2_session_upgrade() failed: %s(%d)",
+      failf(data, "nghttp2_session_upgrade2() failed: %s(%d)",
             nghttp2_strerror(rv), rv);
       return CURLE_HTTP2;
     }