diff options
author | Johannes Berg <johannes.berg@intel.com> | 2016-10-05 16:17:01 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2016-10-12 09:19:10 +0200 |
commit | 8b935ee2ea17db720d70f6420f77f594c0c93f75 (patch) | |
tree | 75123183c4319ac542567a26747f87705561c441 /include | |
parent | 7f6990c830f3e8d703f13d7963acf51936c52ad2 (diff) | |
download | linux-stable-8b935ee2ea17db720d70f6420f77f594c0c93f75.tar.gz linux-stable-8b935ee2ea17db720d70f6420f77f594c0c93f75.tar.bz2 linux-stable-8b935ee2ea17db720d70f6420f77f594c0c93f75.zip |
cfg80211: add ability to check DA/SA in A-MSDU decapsulation
We should not accept arbitrary DA/SA inside A-MSDUs, it could be used
to circumvent protections, like allowing a station to send frames and
make them seem to come from somewhere else.
Add the necessary infrastructure in cfg80211 to allow such checks, in
further patches we'll start using them.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/net/cfg80211.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index f372eadd1963..7df600c463eb 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h @@ -4090,10 +4090,13 @@ int ieee80211_data_from_8023(struct sk_buff *skb, const u8 *addr, * @addr: The device MAC address. * @iftype: The device interface type. * @extra_headroom: The hardware extra headroom for SKBs in the @list. + * @check_da: DA to check in the inner ethernet header, or NULL + * @check_sa: SA to check in the inner ethernet header, or NULL */ void ieee80211_amsdu_to_8023s(struct sk_buff *skb, struct sk_buff_head *list, const u8 *addr, enum nl80211_iftype iftype, - const unsigned int extra_headroom); + const unsigned int extra_headroom, + const u8 *check_da, const u8 *check_sa); /** * cfg80211_classify8021d - determine the 802.1p/1d tag for a data frame |