aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/rx.c
diff options
context:
space:
mode:
authorChun-Yeow Yeoh <yeohchunyeow@gmail.com>2012-03-01 13:03:19 -0500
committerJohn W. Linville <linville@tuxdriver.com>2012-03-05 15:38:33 -0500
commitd665508b98d3cdbeb476e7d6848a513184a81ed0 (patch)
tree00032469034dc31c007251d956396bcfbe2103c6 /net/mac80211/rx.c
parentfe8431f89e25de722610ee5beb2892bd019d1fed (diff)
mac80211: fix the support of setting non-forwarding entity in Mesh
RANN, PREP and PERR propagation should happen only if the dot11MeshForwarding is true. Besides, data frame should not be forwarded if dot11MeshForwarding is false. This redundant checking is necessary to avoid the broadcasted ARP breaking the non-forwarding rule. Signed-off-by: Chun-Yeow Yeoh <yeohchunyeow@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r--net/mac80211/rx.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index f3b515d16f24..c8166adcd600 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -1960,6 +1960,9 @@ ieee80211_rx_h_mesh_fwding(struct ieee80211_rx_data *rx)
1960 return RX_DROP_MONITOR; 1960 return RX_DROP_MONITOR;
1961 } 1961 }
1962 1962
1963 if (!ifmsh->mshcfg.dot11MeshForwarding)
1964 goto out;
1965
1963 fwd_skb = skb_copy(skb, GFP_ATOMIC); 1966 fwd_skb = skb_copy(skb, GFP_ATOMIC);
1964 if (!fwd_skb) { 1967 if (!fwd_skb) {
1965 if (net_ratelimit()) 1968 if (net_ratelimit())