Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=640845a5632390eaa9357cd818646c8f0ee3d47e Commit: 640845a5632390eaa9357cd818646c8f0ee3d47e Parent: 1990af8d14e48445a0ddcca7765a177b6661d676 Author: Johannes Berg <[EMAIL PROTECTED]> AuthorDate: Wed Sep 26 17:53:16 2007 +0200 Committer: David S. Miller <[EMAIL PROTECTED]> CommitDate: Wed Oct 10 16:54:17 2007 -0700
[MAC80211]: use RX_FLAG_DECRYPTED for sw decrypted as well This makes mac80211 set the RX_FLAG_DECRYPTED flag for frames decrypted in software allowing us to handle some things more uniformly. Signed-off-by: Johannes Berg <[EMAIL PROTECTED]> Signed-off-by: John W. Linville <[EMAIL PROTECTED]> Signed-off-by: David S. Miller <[EMAIL PROTECTED]> --- net/mac80211/rx.c | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index d5ce5d3..f5caa1a 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c @@ -522,6 +522,9 @@ ieee80211_rx_h_decrypt(struct ieee80211_txrx_data *rx) ieee80211_wep_is_weak_iv(rx->skb, rx->key)) rx->sta->wep_weak_iv_count++; + /* either the frame will be decrypted or dropped */ + rx->u.rx.status->flag |= RX_FLAG_DECRYPTED; + switch (rx->key->conf.alg) { case ALG_WEP: return ieee80211_crypto_wep_decrypt(rx); @@ -993,9 +996,8 @@ ieee80211_rx_h_drop_unencrypted(struct ieee80211_txrx_data *rx) if (unlikely(!(rx->fc & IEEE80211_FCTL_PROTECTED) && (rx->fc & IEEE80211_FCTL_FTYPE) == IEEE80211_FTYPE_DATA && (rx->fc & IEEE80211_FCTL_STYPE) != IEEE80211_STYPE_NULLFUNC && - (rx->key || rx->sdata->drop_unencrypted) && - (rx->sdata->eapol == 0 || - !ieee80211_is_eapol(rx->skb)))) { + rx->sdata->drop_unencrypted && + (rx->sdata->eapol == 0 || !ieee80211_is_eapol(rx->skb)))) { if (net_ratelimit()) printk(KERN_DEBUG "%s: RX non-WEP frame, but expected " "encryption\n", rx->dev->name); - To unsubscribe from this list: send the line "unsubscribe git-commits-head" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html