mac80211: fix vlan and optimise RX
commitc90aa19d5123cc84fe2260067a3348313349d262
authorJohannes Berg <johannes@sipsolutions.net>
Thu, 1 Oct 2009 20:06:29 +0000 (1 22:06 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 22 Oct 2009 22:12:01 +0000 (22 15:12 -0700)
tree4aec2a14c8f8ef55e9957c855dd54baaa292f5d6
parenteef5edb4ef6eeedf945b3bc81bc593804e522d7d
mac80211: fix vlan and optimise RX

commit fbc44bf7177dfd61381da55405550b693943a432 upstream.

When receiving data frames, we can send them only to
the interface they belong to based on transmitting
station (this doesn't work for probe requests). Also,
don't try to handle other frames for AP_VLAN at all
since those interface should only receive data.

Additionally, the transmit side must check that the
station we're sending a frame to is actually on the
interface we're transmitting on, and not transmit
packets to functions that live on other interfaces,
so validate that as well.

Another bug fix is needed in sta_info.c where in the
VLAN case when adding/removing stations we overwrite
the sdata variable we still need.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
net/mac80211/rx.c
net/mac80211/sta_info.c
net/mac80211/tx.c