]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
content_encoding: fix limit failure message
authorStefan Eissing <stefan@eissing.org>
Tue, 26 May 2026 13:27:22 +0000 (15:27 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Wed, 27 May 2026 07:50:34 +0000 (09:50 +0200)
The message triggered earlier than intended and did not take the
transfer/content type into account.

Ref #21603
Reported-by: Joshua Rogers
Closes #21756

lib/content_encoding.c
tests/data/test387
tests/data/test418

index 0224a8bfe9e8d4f013b398c1dfafda4c677de223..aaef92a7d950da1a2a2269cc8abb77cc4520e0a8 100644 (file)
@@ -750,9 +750,10 @@ CURLcode Curl_build_unencoding_stack(struct Curl_easy *data,
         return CURLE_OK;
       }
 
-      if(Curl_cwriter_count(data, phase) + 1 >= MAX_ENCODE_STACK) {
-        failf(data, "Reject response due to more than %d content encodings",
-              MAX_ENCODE_STACK);
+      if(Curl_cwriter_count(data, phase) >= MAX_ENCODE_STACK) {
+        failf(data, "Reject response exceeding limit of %d %s encodings",
+              MAX_ENCODE_STACK,
+              is_transfer ? "transfer" : "content");
         return CURLE_BAD_CONTENT_ENCODING;
       }
 
index ebdd4b5d116f6f5fe839c18e3f1f3620819a8889..5872cd692e11b860b59715577e6fae0aa8b94444 100644 (file)
@@ -51,7 +51,7 @@ Connection: TE
 61
 </errorcode>
 <stderr mode="text">
-curl: (61) Reject response due to more than 5 content encodings
+curl: (61) Reject response exceeding limit of 5 transfer encodings
 </stderr>
 </verify>
 </testcase>
index ccda8912298dbeedaffcee780877bfac1a39f784..cdd25f4ba9bc540c1368a15fa9a9e5676f04ee01 100644 (file)
@@ -59,7 +59,7 @@ Connection: TE
 61
 </errorcode>
 <stderr mode="text">
-curl: (61) Reject response due to more than 5 content encodings
+curl: (61) Reject response exceeding limit of 5 transfer encodings
 </stderr>
 </verify>
 </testcase>