summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEliad Peller <eliad@wizery.com>2011-12-12 15:30:04 +0200
committerJohn W. Linville <linville@tuxdriver.com>2011-12-13 15:34:15 -0500
commit53d69c399abf3b382c1e737ff9402d31ca5a7a51 (patch)
treeeb70683acb6c0db857ca55def7fb44c7a4d6efa3
parent0d392e938b55935cf4137e05a23009dc168481c3 (diff)
downloadop-kernel-dev-53d69c399abf3b382c1e737ff9402d31ca5a7a51.zip
op-kernel-dev-53d69c399abf3b382c1e737ff9402d31ca5a7a51.tar.gz
mac80211: don't check sdata_running in vif notifier
The ip address of the vif can be set even before the vif is up. requiring the vif to be up in the vif notifier makes the notifer ignore this event, which causes wrong arp filter configuration later on. Reported-by: Eyal Shapira <eyal@wizery.com> Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--net/mac80211/main.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c
index 1455836..0a0d94a 100644
--- a/net/mac80211/main.c
+++ b/net/mac80211/main.c
@@ -393,9 +393,6 @@ static int ieee80211_ifa_changed(struct notifier_block *nb,
sdata = IEEE80211_DEV_TO_SUB_IF(ndev);
bss_conf = &sdata->vif.bss_conf;
- if (!ieee80211_sdata_running(sdata))
- return NOTIFY_DONE;
-
/* ARP filtering is only supported in managed mode */
if (sdata->vif.type != NL80211_IFTYPE_STATION)
return NOTIFY_DONE;
@@ -424,7 +421,7 @@ static int ieee80211_ifa_changed(struct notifier_block *nb,
}
bss_conf->arp_addr_cnt = c;
- /* Configure driver only if associated */
+ /* Configure driver only if associated (which also implies it is up) */
if (ifmgd->associated) {
bss_conf->arp_filter_enabled = sdata->arp_filter_state;
ieee80211_bss_info_change_notify(sdata,
OpenPOWER on IntegriCloud