diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2007-12-18 19:31:23 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-28 17:59:46 -0500 |
commit | 678f5f7117d5780d3a51b201c9f44b7bf90f6a76 (patch) | |
tree | ddf555061ec729e3e14eabc506d0c3b8f32f25b8 /net/mac80211/ieee80211_i.h | |
parent | ce3edf6d0b979fa4d5da7204fd8c6f77f2b8622a (diff) |
mac80211: clean up eapol handling in TX path
The previous patch left only one user of the ieee80211_is_eapol()
function and that user can be eliminated easily by introducing
a new "frame is EAPOL" flag to handle the frame specially (we
already have this information) instead of doing the (expensive)
ieee80211_is_eapol() all the time.
Also, allow unencrypted frames to be sent when they are injected.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r-- | net/mac80211/ieee80211_i.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h index 214109b8d95a..baf53c047127 100644 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h | |||
@@ -164,6 +164,7 @@ struct ieee80211_txrx_data { | |||
164 | #define IEEE80211_TXPD_REQ_TX_STATUS BIT(0) | 164 | #define IEEE80211_TXPD_REQ_TX_STATUS BIT(0) |
165 | #define IEEE80211_TXPD_DO_NOT_ENCRYPT BIT(1) | 165 | #define IEEE80211_TXPD_DO_NOT_ENCRYPT BIT(1) |
166 | #define IEEE80211_TXPD_REQUEUE BIT(2) | 166 | #define IEEE80211_TXPD_REQUEUE BIT(2) |
167 | #define IEEE80211_TXPD_EAPOL_FRAME BIT(3) | ||
167 | /* Stored in sk_buff->cb */ | 168 | /* Stored in sk_buff->cb */ |
168 | struct ieee80211_tx_packet_data { | 169 | struct ieee80211_tx_packet_data { |
169 | int ifindex; | 170 | int ifindex; |
@@ -798,7 +799,6 @@ extern void *mac80211_wiphy_privid; /* for wiphy privid */ | |||
798 | extern const unsigned char rfc1042_header[6]; | 799 | extern const unsigned char rfc1042_header[6]; |
799 | extern const unsigned char bridge_tunnel_header[6]; | 800 | extern const unsigned char bridge_tunnel_header[6]; |
800 | u8 *ieee80211_get_bssid(struct ieee80211_hdr *hdr, size_t len); | 801 | u8 *ieee80211_get_bssid(struct ieee80211_hdr *hdr, size_t len); |
801 | int ieee80211_is_eapol(const struct sk_buff *skb, int hdrlen); | ||
802 | int ieee80211_frame_duration(struct ieee80211_local *local, size_t len, | 802 | int ieee80211_frame_duration(struct ieee80211_local *local, size_t len, |
803 | int rate, int erp, int short_preamble); | 803 | int rate, int erp, int short_preamble); |
804 | void mac80211_ev_michael_mic_failure(struct net_device *dev, int keyidx, | 804 | void mac80211_ev_michael_mic_failure(struct net_device *dev, int keyidx, |