BUG/MINOR: init: Initialize random seed earlier in the init process
authorRemi Tricot-Le Breton <rlebreton@haproxy.com>
Mon, 11 Aug 2025 13:55:35 +0000 (15:55 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Wed, 1 Oct 2025 14:44:10 +0000 (16:44 +0200)
commit06d4f75a6563919e3d99434b3669e65a9a3c300b
tree501b144e2d0128b7c5bcf253181c618dae094c30
parentef6f834070674a68fe203186a4ee7d592c8a680f
BUG/MINOR: init: Initialize random seed earlier in the init process

The random seed used in ha_random functions needs to be first
initialized by calling ha_random_boot. This function was called rather
late in the init process, after the init functions (INITCALLS) are
called and after the configuration parsing for instance which means that
any ha_random call in an init function would return 0. This was the case
in 'vars_init' and 'cache_init' which tried to build seeds for specific
hash calculations but ended up not being seeded.

This patch can be backported on all stable branches.

(cherry picked from commit 15ee49e8222be2b34663fac838aa74e62f6c82ea)
Signed-off-by: Amaury Denoyelle <adenoyelle@haproxy.com>
(cherry picked from commit f7fbb55f0dcbbb44f6d20950bc1c0835699c85b6)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit 0429f236a3adae23ca173cf11b74ccfd8099168f)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
src/haproxy.c