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