Mailing List Archive

[master] 65a42d183 param: Restore old default h2_max_header_list_size
commit 65a42d183eb3da84f5f6ba3150d607092354f450
Author: Dridi Boukelmoune <dridi.boukelmoune@gmail.com>
Date: Thu Apr 4 19:18:12 2024 +0200

param: Restore old default h2_max_header_list_size

Except that the old default value replaces the maximum one. Aligning
with the literal maximum value for the underlying HTTP/2 setting breaks
32bit builds because the byte tweaks take a detour via ssize_t. When it
casts to uintmax_t the MSB is propagated all the way, triggering the
following error at build time:

> 4294967295b is too large for this architecture.

Instead of fighting a tweak that is clearly wrong, grant h2 clients a
maximum of 2GB of uncompressed headers (instead of 4GB) that will never
happen, because h2 is overall much wronger.

diff --git a/include/tbl/params.h b/include/tbl/params.h
index 1b50d4cda..938b00f4b 100644
--- a/include/tbl/params.h
+++ b/include/tbl/params.h
@@ -1288,7 +1288,7 @@ PARAM_SIMPLE(
/* name */ h2_max_header_list_size,
/* type */ bytes_u,
/* min */ "0b",
- /* max */ "4294967295b",
+ /* max */ "2147483647b", /* NB: not the RFC maximum */
/* def */ "0b",
/* units */ "bytes",
/* descr */
_______________________________________________
varnish-commit mailing list
varnish-commit@varnish-cache.org
https://www.varnish-cache.org/lists/mailman/listinfo/varnish-commit