aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/nat/lib/alloc.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/plugins/nat/lib/alloc.c b/src/plugins/nat/lib/alloc.c
index ed4ba060b0b..3196718e06a 100644
--- a/src/plugins/nat/lib/alloc.c
+++ b/src/plugins/nat/lib/alloc.c
@@ -102,9 +102,9 @@ nat_add_del_ip4_pool_addrs (nat_ip4_pool_t * pool,
}
static_always_inline u16
-nat_random_port (u32 random_seed, u16 min, u16 max)
+nat_random_port (u32 * random_seed, u16 min, u16 max)
{
- return min + random_u32 (&random_seed) /
+ return min + random_u32 (random_seed) /
(random_u32_max () / (max - min + 1) + 1);
}
@@ -136,7 +136,7 @@ nat_alloc_ip4_addr_and_port_cb_default (nat_ip4_pool_t * pool,
{ \
portnum = (port_per_thread * \
nat_thread_index) + \
- nat_random_port(pool->random_seed, 1, port_per_thread) + 1024; \
+ nat_random_port(&pool->random_seed, 1, port_per_thread) + 1024; \
if (clib_bitmap_get_no_check (a->busy_##n##_port_bitmap, portnum)) \
continue; \
clib_bitmap_set_no_check (a->busy_##n##_port_bitmap, portnum, 1); \
@@ -171,7 +171,7 @@ nat_alloc_ip4_addr_and_port_cb_default (nat_ip4_pool_t * pool,
{ \
portnum = (port_per_thread * \
nat_thread_index) + \
- nat_random_port(pool->random_seed, 1, port_per_thread) + 1024; \
+ nat_random_port(&pool->random_seed, 1, port_per_thread) + 1024; \
if (clib_bitmap_get_no_check (a->busy_##n##_port_bitmap, portnum)) \
continue; \
clib_bitmap_set_no_check (a->busy_##n##_port_bitmap, portnum, 1); \