bug-wget
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-wget] [Patch] fix bug #39175 Header value length limited with 2


From: Darshit Shah
Subject: Re: [Bug-wget] [Patch] fix bug #39175 Header value length limited with 256
Date: Sun, 15 Mar 2015 01:04:12 +0530
User-agent: Mutt/1.5.23 (2014-03-12)

Hi Miquel,

Thanks a lot for making this contribution.

I not a supporter of making such large (8K is gigantic!) memory assignments on the stack. Wget runs not only on the latest x86_64 processors, but often also on ancient and obscure architectures. And assignment of a variable using 8K of memory on the stack may not be possible on some architectures.
Instead, I think this should be done via dynamic memory allocation.

On 03/12, Miquel Llobet wrote:
Increased the header buffer to 8Kb, as there are no limits to the size of
field name, values or headers themselves. While the current value is big
enough, other projects such as Apache [1] or nginx have limits of 4-8Kb.

If we want to allow for arbitrary size headers we should use
resp_header_strdup instead of resp_header_copy, but this new value should
be enough.

--- src/http.c.orig 2015-03-12 21:50:03.000000000 +0100
+++ src/http.c 2015-03-12 21:04:08.000000000 +0100
@@ -1695,7 +1695,7 @@

  char *head;
  struct response *resp;
-  char hdrval[512];
+  char hdrval[8190];
  char *message;

  /* Declare WARC variables. */

[1]: https://httpd.apache.org/docs/2.2/mod/core.html#limitrequestfieldsize

Miquel Llobet
--- end quoted text ---

--
Thanking You,
Darshit Shah

Attachment: pgpZJ5FytGwRX.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]