[rt2x00-users] [PATCH 5/9] drivers/net/wireless: Correct code taking the size of a pointer
Julia Lawall
julia at diku.dk
Sun Dec 13 13:10:30 UTC 2009
On Sun, 13 Dec 2009, Andreas Schwab wrote:
> Julia Lawall <julia at diku.dk> writes:
>
> > diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
> > index eb1e1d0..1e74732 100644
> > --- a/drivers/net/wireless/rt2x00/rt2800lib.c
> > +++ b/drivers/net/wireless/rt2x00/rt2800lib.c
> > @@ -2140,8 +2140,8 @@ static void rt2800_get_tkip_seq(struct ieee80211_hw *hw, u8 hw_key_idx,
> > rt2800_register_multiread(rt2x00dev, offset,
> > &iveiv_entry, sizeof(iveiv_entry));
> >
> > - memcpy(&iveiv_entry.iv[0], iv16, sizeof(iv16));
> > - memcpy(&iveiv_entry.iv[4], iv32, sizeof(iv32));
> > + memcpy(&iveiv_entry.iv[0], iv16, sizeof(*iv16));
> > + memcpy(&iveiv_entry.iv[4], iv32, sizeof(*iv32));
>
> That still looks pretty bogus, the memcpy calls are overwriting the
> values written by the previous rt2800_register_multiread call. Most
> likely the first two arguments need to be swapped.
OK, I will look at it and try again.
Thanks,
julia
More information about the users
mailing list