]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
http2: refused stream handling for retry
authorStefan Eissing <stefan@eissing.org>
Sat, 7 Oct 2023 14:29:58 +0000 (16:29 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Sun, 8 Oct 2023 09:01:47 +0000 (11:01 +0200)
- answer HTTP/2 streams refused via a GOAWAY from the server to
  respond with CURLE_RECV_ERROR in order to trigger a retry
  on another connection

Reported-by: black-desk on github
Ref #11859
Closes #12054

lib/http2.c

index 1857c23b52f3def9a3cc750b91217d7faeb17d81..c8b059498f0177176c12a6cda05c3fdb8e204147 100644 (file)
@@ -1688,7 +1688,7 @@ static ssize_t http2_handle_stream_close(struct Curl_cfilter *cf,
                 "connection", stream->id);
     connclose(cf->conn, "REFUSED_STREAM"); /* don't use this anymore */
     data->state.refused_stream = TRUE;
-    *err = CURLE_SEND_ERROR; /* trigger Curl_retry_request() later */
+    *err = CURLE_RECV_ERROR; /* trigger Curl_retry_request() later */
     return -1;
   }
   else if(stream->error != NGHTTP2_NO_ERROR) {