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
pgpegkd6UbX0V.pgp
Description: PGP signature
