> + /* Driver supports radiotap. */ > +#define IEEE80211_HW_RADIOTAP_SUPPORTED (1<<10) > + if (local->monitors && > + local->hw.flags & IEEE80211_HW_RADIOTAP_SUPPORTED) { > + radiotap_len = ieee80211_get_radiotap_len(skb); > + skb_pull(skb, radiotap_len); > + } I don't think that can work. 1) it needs a lot more documentation on what a driver needs to do for this (for example that it should only add radiotap headers if a monitor interface was added) 2) afaik local->monitors is increased even for soft monitor interfaces, thus this will really fall on its nose when the driver supports radiotap but not monitor during operation. johannes
Attachment:
signature.asc
Description: This is a digitally signed message part