提交 570bd537 编写于 作者: J Johannes Berg 提交者: David S. Miller

[MAC80211]: split ieee80211_rx_h_check handler

The ieee80211_rx_h_check handler really does two things, it's
a lot easier to understand if it's split into ieee80211_rx_h_check
and ieee80211_rx_h_load_key, and it may be possible in the future
to optimise the key loading to not do it for each interface.
Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
Signed-off-by: NJiri Benc <jbenc@suse.cz>
Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
上级 8e6f0032
...@@ -234,7 +234,6 @@ static ieee80211_txrx_result ...@@ -234,7 +234,6 @@ static ieee80211_txrx_result
ieee80211_rx_h_check(struct ieee80211_txrx_data *rx) ieee80211_rx_h_check(struct ieee80211_txrx_data *rx)
{ {
struct ieee80211_hdr *hdr; struct ieee80211_hdr *hdr;
int always_sta_key;
hdr = (struct ieee80211_hdr *) rx->skb->data; hdr = (struct ieee80211_hdr *) rx->skb->data;
/* Drop duplicate 802.11 retransmissions (IEEE 802.11 Chap. 9.2.9) */ /* Drop duplicate 802.11 retransmissions (IEEE 802.11 Chap. 9.2.9) */
...@@ -302,6 +301,16 @@ ieee80211_rx_h_check(struct ieee80211_txrx_data *rx) ...@@ -302,6 +301,16 @@ ieee80211_rx_h_check(struct ieee80211_txrx_data *rx)
return TXRX_QUEUED; return TXRX_QUEUED;
} }
return TXRX_CONTINUE;
}
static ieee80211_txrx_result
ieee80211_rx_h_load_key(struct ieee80211_txrx_data *rx)
{
struct ieee80211_hdr *hdr = (struct ieee80211_hdr *) rx->skb->data;
int always_sta_key;
if (rx->sdata->type == IEEE80211_IF_TYPE_STA) if (rx->sdata->type == IEEE80211_IF_TYPE_STA)
always_sta_key = 0; always_sta_key = 0;
else else
...@@ -1208,6 +1217,7 @@ ieee80211_rx_handler ieee80211_rx_handlers[] = ...@@ -1208,6 +1217,7 @@ ieee80211_rx_handler ieee80211_rx_handlers[] =
ieee80211_rx_h_monitor, ieee80211_rx_h_monitor,
ieee80211_rx_h_passive_scan, ieee80211_rx_h_passive_scan,
ieee80211_rx_h_check, ieee80211_rx_h_check,
ieee80211_rx_h_load_key,
ieee80211_rx_h_sta_process, ieee80211_rx_h_sta_process,
ieee80211_rx_h_ccmp_decrypt, ieee80211_rx_h_ccmp_decrypt,
ieee80211_rx_h_tkip_decrypt, ieee80211_rx_h_tkip_decrypt,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册