]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
quiche: fix upload for bigger content-length
authorJean-Philippe Menil <jpmenil@gmail.com>
Wed, 9 Feb 2022 21:43:13 +0000 (22:43 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 24 Feb 2022 08:34:37 +0000 (09:34 +0100)
Signed-off-by: Jean-Philippe Menil <jpmenil@gmail.com>
Closes #8421

docs/KNOWN_BUGS
lib/vquic/quiche.c

index 5dc0d994ea0a2bd3a135c80f6e9eae51019cd2ed..39a2995e6d5bf79d41bb3eb32874d31c12e8adad 100644 (file)
@@ -161,7 +161,6 @@ problems may have been fixed or changed somewhat since this was written.
  18.2 Uploading HTTP/3 files gets interrupted at certain file sizes
  18.4 Downloading with HTTP/3 produces broken files
  18.6 HTTP/3 multipart POST with quiche fails
- 18.7 HTTP/3 quiche upload large file fails
  18.8 HTTP/3 does not support client certs
  18.9 connection migration does not work
 
@@ -1135,10 +1134,6 @@ problems may have been fixed or changed somewhat since this was written.
 
  https://github.com/curl/curl/issues/7125
 
-18.7 HTTP/3 quiche upload large file fails
-
- https://github.com/curl/curl/issues/7532
-
 18.8 HTTP/3 does not support client certs
 
  aka "mutual authentication".
index ed1179d4dcbf7258b2e03f9709c33f2570d9eba8..ea3a66c278aa0e7b17adc01448a16076e81833b9 100644 (file)
@@ -701,7 +701,10 @@ static ssize_t h3_stream_send(struct Curl_easy *data,
     H3BUGF(infof(data, "Pass on %zd body bytes to quiche", len));
     sent = quiche_h3_send_body(qs->h3c, qs->conn, stream->stream3_id,
                                (uint8_t *)mem, len, FALSE);
-    if(sent < 0) {
+    if(sent == QUICHE_H3_ERR_DONE) {
+      sent = 0;
+    }
+    else if(sent < 0) {
       *curlcode = CURLE_SEND_ERROR;
       return -1;
     }