From 8a2db35a8aae8fe1dd9a37bd5e7e316c9aaf8a7d Mon Sep 17 00:00:00 2001 From: Sepherosa Ziehau Date: Fri, 15 Mar 2013 17:44:11 +0800 Subject: [PATCH] route(8): Fix a possible infinite loop in "route flush" Obtained-from: FreeBSD 230989 DragonFly-bug: http://bugs.dragonflybsd.org/issues/2523 --- sbin/route/route.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/route/route.c b/sbin/route/route.c index ee4cc88710..4b78626e18 100644 --- a/sbin/route/route.c +++ b/sbin/route/route.c @@ -462,7 +462,7 @@ netname(struct sockaddr *sa) * width subnet fields. */ while (in.s_addr &~ mask) - mask = (long)mask >> subnetshift; + mask |= mask >> subnetshift; net = in.s_addr & mask; while ((mask & 1) == 0) mask >>= 1, net >>= 1; -- 2.41.0