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:27:54 +1100
Cc: netdev@xxxxxxxxxxx, jamal <hadi@xxxxxxxxxx>
In-reply-to: <20041101173434.GA12437@xxxxxxxxxxxxxxxxx>
References: <20041030013700.GA21540@xxxxxxxxxxxxxxxxx> <E1CNiOT-0008GU-00@xxxxxxxxxxxxxxxxxxxxxxxx> <20041030030936.GA25102@xxxxxxxxxxxxxxxxx> <1099163419.1039.97.camel@xxxxxxxxxxxxxxxx> <20041101044433.GA18772@xxxxxxxxxxxxxxxxx> <20041101173434.GA12437@xxxxxxxxxxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mutt/1.5.6+20040722i
On Mon, Nov 01, 2004 at 11:34:34AM -0600, Matt Domsch wrote:
>
> +                     else if (!dev->addr_len)
> +                             memset(ifr->ifr_hwaddr.sa_data, 0, sizeof 
> ifr->ifr_hwaddr.sa_data);
> +                     else
> +                             memcpy(ifr->ifr_hwaddr.sa_data, dev->dev_addr,
> +                                    min(sizeof ifr->ifr_hwaddr.sa_data, 
> (size_t) dev->addr_len));

Same problem as before.  If dev->addr_len is greater than zero but less
than sizeof ifr->ifr_hwaddr.sa_data, then you've got garbage in there.
Zero is not a special case.
-- 
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>