From f4ab464d3492c8ad6d3d0a4851e382e40d438a19 Mon Sep 17 00:00:00 2001 From: Martin Vahlensieck Date: Wed, 17 Apr 2024 20:59:22 +0200 Subject: [PATCH] ng_pipe: Replace deprecated random() with prng32_bounded() Signed-off-by: Martin Vahlensieck MFC after: 2 weeks Reviewed by: markj Pull Request: https://github.com/freebsd/freebsd-src/pull/1181 (cherry picked from commit a3ecf8c7863683e53c77a17f96ab7012352265b9) --- sys/netgraph/ng_pipe.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/netgraph/ng_pipe.c b/sys/netgraph/ng_pipe.c index 7afaf24f59148..d368c142b1ab1 100644 --- a/sys/netgraph/ng_pipe.c +++ b/sys/netgraph/ng_pipe.c @@ -44,6 +44,7 @@ #include #include #include +#include #include #include @@ -771,7 +772,7 @@ pipe_dequeue(struct hookinfo *hinfo, struct timeval *now) { * the original packet... */ if (hinfo->cfg.duplicate && - random() % 100 <= hinfo->cfg.duplicate) { + prng32_bounded(100) <= hinfo->cfg.duplicate) { ngp_h = uma_zalloc(ngp_zone, M_NOWAIT); KASSERT(ngp_h != NULL, ("ngp_h zalloc failed (3)")); m = m_dup(m, M_NOWAIT); @@ -814,7 +815,7 @@ pipe_dequeue(struct hookinfo *hinfo, struct timeval *now) { /* Randomly discard the frame, according to BER setting */ if (hinfo->cfg.ber) { oldrand = rand; - rand = random(); + rand = prng32_bounded(1U << 31); if (((oldrand ^ rand) << 17) >= hinfo->ber_p[priv->overhead + m->m_pkthdr.len]) { hinfo->stats.out_disc_frames++;