svn commit: r190775 - head/sbin/route

Coleman Kane cokane at FreeBSD.org
Mon Apr 6 08:09:24 PDT 2009


On Mon, 2009-04-06 at 14:27 +0000, Randall Stewart wrote:
> Author: rrs
> Date: Mon Apr  6 14:27:28 2009
> New Revision: 190775
> URL: http://svn.freebsd.org/changeset/base/190775
> 
> Log:
>   Ok, looking at the solution a bit closer, the level
>   calculation was too agressive. Instead we should only
>   look at each nibble. This makes it so we make
>   10.2.0.0 become 10.2/16 NOT 10.2/17.

I presume you meant "NOT 10.2/15" here? Correct me if I'm wrong, but
that's what I gathered by the discussion of "the bug" in the previous
thread.

>   
>   Need to explore the non-cidr address issue. The two
>   may not be seperable..
>   
>   MFC after:	1 week
> 
> Modified:
>   head/sbin/route/route.c
> 
> Modified: head/sbin/route/route.c
> ==============================================================================
> --- head/sbin/route/route.c	Mon Apr  6 14:12:22 2009	(r190774)
> +++ head/sbin/route/route.c	Mon Apr  6 14:27:28 2009	(r190775)
> @@ -808,15 +808,15 @@ inet_makenetandmask(net, sin, bits)
>  	 * CIDR address.
>  	 */
>  	if ((bits == 0)  && (addr != 0)) {
> -		int i, j;
> -		for(i=0,j=1; i<32; i++)  {
> +		u_long i, j;
> +		for(i=0,j=0xff; i<4; i++)  {
>  			if (addr & j) {
>  				break;
>  			}
> -			j <<= 1;
> +			j <<= 8;
>  		}
>  		/* i holds the first non zero bit */
> -		bits = 32 - i;	
> +		bits = 32 - (i*8);	
>  	}
>  	mask = 0xffffffff << (32 - bits);
>  

-- 
Coleman Kane
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part
Url : http://lists.freebsd.org/pipermail/svn-src-head/attachments/20090406/fdd5df4d/attachment.pgp


More information about the svn-src-head mailing list