netdev
[Top] [All Lists]

Re: [PATCH 2.6] dev.c: clear SIOCGIFHWADDR buffer if !dev->addr_len

To: Matt Domsch <Matt_Domsch@xxxxxxxx>
Subject: Re: [PATCH 2.6] dev.c: clear SIOCGIFHWADDR buffer if !dev->addr_len
From: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 2 Nov 2004 07:41:31 +1100
Cc: netdev@xxxxxxxxxxx, jamal <hadi@xxxxxxxxxx>
In-reply-to: <20041101203821.GA15086@lists.us.dell.com>
References: <20041030013700.GA21540@lists.us.dell.com> <E1CNiOT-0008GU-00@gondolin.me.apana.org.au> <20041030030936.GA25102@lists.us.dell.com> <1099163419.1039.97.camel@jzny.localdomain> <20041101044433.GA18772@lists.us.dell.com> <20041101173434.GA12437@lists.us.dell.com> <20041101202754.GA23149@gondor.apana.org.au> <20041101203821.GA15086@lists.us.dell.com>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mutt/1.5.6+20040722i
On Mon, Nov 01, 2004 at 02:38:21PM -0600, Matt Domsch wrote:
> 
> OK, I'll unconditionally clear it all first.  How's this?

It's nearly there :)

> +                     if ((size_t) dev->addr_len > sizeof 
> ifr->ifr_hwaddr.sa_data)
> +                             return -EOVERFLOW;
> +                     memset(ifr->ifr_hwaddr.sa_data, 0, sizeof 
> ifr->ifr_hwaddr.sa_data);
>                       memcpy(ifr->ifr_hwaddr.sa_data, dev->dev_addr,
>                              min(sizeof ifr->ifr_hwaddr.sa_data, (size_t) 
> dev->addr_len));

You don't need the min anymore since you've checked that dev->addr_len
is not greater than sizeof ifr->ifr_hwaddr.sa_data.

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

<Prev in Thread] Current Thread [Next in Thread>