From 29f7fc878888fc8a55bbd1978884bed781692928 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Thu, 24 Oct 2019 20:00:01 -0400 Subject: [PATCH] pimd: Cast up to 64 bit to prevent overflow Signed-off-by: Donald Sharp --- pimd/pim_bsm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pimd/pim_bsm.c b/pimd/pim_bsm.c index ffaa858fa7..9d42666b92 100644 --- a/pimd/pim_bsm.c +++ b/pimd/pim_bsm.c @@ -1033,7 +1033,8 @@ static uint32_t hash_calc_on_grp_rp(struct prefix group, struct in_addr rp, else grpaddr = grpaddr & mask; rp_add = ntohl(rp.s_addr); - temp = 1103515245 * ((1103515245 * grpaddr + 12345) ^ rp_add) + 12345; + temp = 1103515245 * ((1103515245 * (uint64_t)grpaddr + 12345) ^ rp_add) + + 12345; hash = temp & (0x7fffffff); return hash; } -- 2.39.5