From 6a58f4a89660b1b8ce37139ec1b65acaad8795ed Mon Sep 17 00:00:00 2001 From: flyingeagle23 Date: Tue, 12 Sep 2017 15:10:46 +0800 Subject: Fix issue in nat Bisearch algorithm (VPP-980) Change-Id: I39b1d1ec6fb9a10e2a0e67d36b01c0bf2522d07f Signed-off-by: flyingeagle23 --- src/plugins/nat/nat.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/plugins/nat') diff --git a/src/plugins/nat/nat.c b/src/plugins/nat/nat.c index b13c8571020..faf75fcb618 100644 --- a/src/plugins/nat/nat.c +++ b/src/plugins/nat/nat.c @@ -1323,7 +1323,7 @@ int snat_static_mapping_match (snat_main_t * sm, rand = 1 + (random_u32 (&sm->random_seed) % m->locals[hi].prefix); while (lo < hi) { - mid = ((hi - 1) >> 1) + lo; + mid = ((hi - lo) >> 1) + lo; (rand > m->locals[mid].prefix) ? (lo = mid + 1) : (hi = mid); } if (!(m->locals[lo].prefix >= rand)) -- cgit 1.2.3-korg