aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-4.4/641-bridge_always_accept_eap.patch
blob: 5da6ab64a17c86e212da7ac4b9da7e48c2417435 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
From: Felix Fietkau <nbd@nbd.name>
Subject: [PATCH] bridge: always accept EAP

Allow EAP frames to pass through bridges even in learning state. Fixes
issues with WDS.
---
--- a/net/bridge/br_input.c
+++ b/net/bridge/br_input.c
@@ -152,7 +152,7 @@ int br_handle_frame_finish(struct net *n
 	    br_multicast_rcv(br, p, skb, vid))
 		goto drop;
 
-	if (p->state == BR_STATE_LEARNING)
+	if ((p->state == BR_STATE_LEARNING) && skb->protocol != htons(ETH_P_PAE))
 		goto drop;
 
 	BR_INPUT_SKB_CB(skb)->brdev = br->dev;