> > > > +       return;
> > > > +
> > > > +mic_fail:
> > > > +       cfg80211_michael_mic_failure(sdata->dev, sta->addr,
> > > > +                                    (status->flag &
> > > > RX_FLAG_MCAST)
> > > > ?
> > > > +                                    NL80211_KEYTYPE_GROUP :
> > > > +                                    NL80211_KEYTYPE_PAIRWISE,
> > > > +                                    key ? key->conf.keyidx :
> > > > -1,
> > > > +                                    NULL, GFP_ATOMIC);
> > > 
> > > Do we really want to handle that inline here? The driver probably
> > > has a different check to even set RX_FLAG_MMIC_ERROR, so we could
> > > just ask it to call cfg80211_michael_mic_failure() [or a wrapper
> > > to
> > > get sdata->dev] instead? I guess this works too though, and might
> > > be easier to understand.
> > 
> > Yeah, driver directly reporting MIC failure will be fine. I think a
> > wrapper may be required rather than mac80211 based driver directly
> > calling cfg80211 function?
> 
> It would be, because the driver can't get sdata->dev (although I
> think there's now a hidden path to do this?)

However, we can do both ways, I don't really care that much. It seems
possible though that a driver would not even report the frame, but only
the necessary info, in this case - so that we might need an out-of-band 
path for it anyway?

johannes

Reply via email to