diff options
author | David S. Miller <davem@davemloft.net> | 2009-04-25 16:36:46 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-04-25 16:36:46 -0700 |
commit | 495a1b4eff1a216a3ea171ac137f1807e6555f52 (patch) | |
tree | 72d059d6d66fac6a74df33bac2eb40dcd0ea0732 /net/mac80211/event.c | |
parent | ad8affd972a705a38e769859c50ee8e749b631da (diff) | |
parent | d3feaf5ad12259927039a675cfb25dc342b403ab (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6
Conflicts:
net/mac80211/pm.c
Diffstat (limited to 'net/mac80211/event.c')
-rw-r--r-- | net/mac80211/event.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/net/mac80211/event.c b/net/mac80211/event.c index 0d95561c0ee0..f288d01a6344 100644 --- a/net/mac80211/event.c +++ b/net/mac80211/event.c @@ -12,12 +12,12 @@ #include "ieee80211_i.h" /* - * indicate a failed Michael MIC to userspace; the passed packet - * (in the variable hdr) must be long enough to extract the TKIP - * fields like TSC + * Indicate a failed Michael MIC to userspace. If the caller knows the TSC of + * the frame that generated the MIC failure (i.e., if it was provided by the + * driver or is still in the frame), it should provide that information. */ void mac80211_ev_michael_mic_failure(struct ieee80211_sub_if_data *sdata, int keyidx, - struct ieee80211_hdr *hdr) + struct ieee80211_hdr *hdr, const u8 *tsc) { union iwreq_data wrqu; char *buf = kmalloc(128, GFP_ATOMIC); @@ -34,8 +34,9 @@ void mac80211_ev_michael_mic_failure(struct ieee80211_sub_if_data *sdata, int ke kfree(buf); } - /* - * TODO: re-add support for sending MIC failure indication - * with all info via nl80211 - */ + cfg80211_michael_mic_failure(sdata->dev, hdr->addr2, + (hdr->addr1[0] & 0x01) ? + NL80211_KEYTYPE_GROUP : + NL80211_KEYTYPE_PAIRWISE, + keyidx, tsc); } |