wifi: mac80211: Allow EAPOL tx from specific link
Allow link source address on TX. Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
d06faef148
commit
0d5891e347
|
@ -1752,6 +1752,9 @@ void __ieee80211_check_fast_rx_iface(struct ieee80211_sub_if_data *sdata);
|
|||
void ieee80211_check_fast_rx_iface(struct ieee80211_sub_if_data *sdata);
|
||||
void ieee80211_clear_fast_rx(struct sta_info *sta);
|
||||
|
||||
bool ieee80211_is_our_addr(struct ieee80211_sub_if_data *sdata,
|
||||
const u8 *addr, int *out_link_id);
|
||||
|
||||
/* STA code */
|
||||
void ieee80211_sta_setup_sdata(struct ieee80211_sub_if_data *sdata);
|
||||
int ieee80211_mgd_auth(struct ieee80211_sub_if_data *sdata,
|
||||
|
|
|
@ -2532,7 +2532,7 @@ __ieee80211_data_to_8023(struct ieee80211_rx_data *rx, bool *port_control)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static bool ieee80211_is_our_addr(struct ieee80211_sub_if_data *sdata,
|
||||
bool ieee80211_is_our_addr(struct ieee80211_sub_if_data *sdata,
|
||||
const u8 *addr, int *out_link_id)
|
||||
{
|
||||
unsigned int link_id;
|
||||
|
|
|
@ -2781,7 +2781,7 @@ static struct sk_buff *ieee80211_build_hdr(struct ieee80211_sub_if_data *sdata,
|
|||
(sdata->vif.type != NL80211_IFTYPE_OCB) &&
|
||||
!multicast && !authorized &&
|
||||
(cpu_to_be16(ethertype) != sdata->control_port_protocol ||
|
||||
!ether_addr_equal(sdata->vif.addr, skb->data + ETH_ALEN)))) {
|
||||
!ieee80211_is_our_addr(sdata, skb->data + ETH_ALEN, NULL)))) {
|
||||
#ifdef CONFIG_MAC80211_VERBOSE_DEBUG
|
||||
net_info_ratelimited("%s: dropped frame to %pM (unauthorized port)\n",
|
||||
sdata->name, hdr.addr1);
|
||||
|
|
Loading…
Reference in New Issue