svn commit: r232371 - stable/8/sbin/route

Hiroki Sato hrs at FreeBSD.org
Fri Mar 2 00:15:53 UTC 2012


Author: hrs
Date: Fri Mar  2 00:15:52 2012
New Revision: 232371
URL: http://svn.freebsd.org/changeset/base/232371

Log:
  MFC r230989: Fix a possible infinite loop in "route flush" on 64-bit archs.
  
  Approved by:	re (bz)

Modified:
  stable/8/sbin/route/route.c
Directory Properties:
  stable/8/sbin/route/   (props changed)

Modified: stable/8/sbin/route/route.c
==============================================================================
--- stable/8/sbin/route/route.c	Fri Mar  2 00:15:13 2012	(r232370)
+++ stable/8/sbin/route/route.c	Fri Mar  2 00:15:52 2012	(r232371)
@@ -460,8 +460,8 @@ netname(struct sockaddr *sa)
 			 * Guess at the subnet mask, assuming reasonable
 			 * width subnet fields.
 			 */
-			while (in.s_addr &~ mask)
-				mask = (long)mask >> subnetshift;
+			while (in.s_addr & ~mask)
+				mask |= mask >> subnetshift;
 			net = in.s_addr & mask;
 			while ((mask & 1) == 0)
 				mask >>= 1, net >>= 1;


More information about the svn-src-stable mailing list