Search Linux Wireless

Re: [RFC 1/5] cfg80211: pass the wdev on the country IE regulatory hint

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2013-11-14 at 06:05 -0800, Luis R. Rodriguez wrote:

> > > -void regulatory_hint_country_ie(struct wiphy *wiphy, enum ieee80211_band band,
> > > +void regulatory_hint_country_ie(struct wireless_dev *wdev,
> > > +				enum ieee80211_band band,
> > >  				const u8 *country_ie, u8 country_ie_len)
> > ...
> > > +       request->wdev = wdev;
> > > 
> > You have absolutely no validation of this pointer - the lifetime of the
> > request object and the wdev aren't necessarily the same.
> 
> Agreed.
> 
> > At least you should very carefully document that this pointer is a
> > cookie (if it really is) and must never be dereferenced.
> 
> OK, I could also validate it upon processing but we'd need to loop
> over the rdev wdev list for the country IE hint, if that is acceptable
> upon procesing it'd be valid and we'd avoid corner case issues.
> Thoughts?

As far as I can tell you already don't use it in any other way but a
cookie pointer, comparing while iterating the then-current list of
wdevs. But that's kinda unsafe. Might also be worth just making it a
void* to avoid people trying to use it.

johannes

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux