From 7e452ba15cade36feb864b8570401f14fa8503e3 Mon Sep 17 00:00:00 2001 From: Filip Tehlar Date: Fri, 22 Dec 2023 14:04:29 +0100 Subject: quic: seed random generator during init Quic does not seed random value, so if the plugin is loaded separately RAND_bytes will fail. Type: fix Change-Id: If600cbde1fef30afb6316fc1a355261b008c3191 Signed-off-by: Filip Tehlar --- src/plugins/quic/quic.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/plugins/quic') diff --git a/src/plugins/quic/quic.c b/src/plugins/quic/quic.c index a728d2a86f9..88e3277a160 100644 --- a/src/plugins/quic/quic.c +++ b/src/plugins/quic/quic.c @@ -14,6 +14,9 @@ */ #include +#include + +#include #include #include @@ -2507,6 +2510,11 @@ quic_init (vlib_main_t * vm) u64 options[APP_OPTIONS_N_OPTIONS]; quic_main_t *qm = &quic_main; u32 num_threads, i; + u8 seed[32]; + + if (syscall (SYS_getrandom, &seed, sizeof (seed), 0) != sizeof (seed)) + return clib_error_return_unix (0, "getrandom() failed"); + RAND_seed (seed, sizeof (seed)); num_threads = 1 /* main thread */ + vtm->n_threads; -- cgit 1.2.3-korg