From 1aa899ff38548a5d1c196f5c9ad7047f0fae3f5a Mon Sep 17 00:00:00 2001 From: Jay Satiro Date: Sun, 5 Jun 2016 03:13:32 -0400 Subject: http: Fix HTTP/2 connection reuse - Change the parser to not require a minor version for HTTP/2. HTTP/2 connection reuse broke when we changed from HTTP/2.0 to HTTP/2 in 8243a95 because the parser still expected a minor version. Bug: https://github.com/curl/curl/issues/855 Reported-by: Andrew Robbins, Frank Gevaerts --- lib/http.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'lib') diff --git a/lib/http.c b/lib/http.c index 6a76b88ed..357f81ef2 100644 --- a/lib/http.c +++ b/lib/http.c @@ -3308,6 +3308,13 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data, &httpversion_major, &conn->httpversion, &k->httpcode); + + if(nc == 1 && httpversion_major == 2 && + 1 == sscanf(HEADER1, " HTTP/2 %d", &k->httpcode)) { + conn->httpversion = 0; + nc = 3; + } + if(nc==3) { conn->httpversion += 10 * httpversion_major; -- cgit v1.2.3