X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/ed6be451a0906c1d99e8726307f73a7997b8e70c..ca29e2ab07eadce1c644c7e6df63f99c09aafc7f:/target/linux/generic/patches-3.0/640-bridge_no_eap_forward.patch diff --git a/target/linux/generic/patches-3.0/640-bridge_no_eap_forward.patch b/target/linux/generic/patches-3.0/640-bridge_no_eap_forward.patch index dac898276..778efac2b 100644 --- a/target/linux/generic/patches-3.0/640-bridge_no_eap_forward.patch +++ b/target/linux/generic/patches-3.0/640-bridge_no_eap_forward.patch @@ -4,12 +4,12 @@ dst = NULL; -- if (is_multicast_ether_addr(dest)) { +- if (is_broadcast_ether_addr(dest)) + if (skb->protocol == htons(ETH_P_PAE)) { + skb2 = skb; + /* Do not forward 802.1x/EAP frames */ + skb = NULL; -+ } else if (is_multicast_ether_addr(dest)) { ++ } else if (is_broadcast_ether_addr(dest)) + skb2 = skb; + else if (is_multicast_ether_addr(dest)) { mdst = br_mdb_get(br, skb); - if (mdst || BR_INPUT_SKB_CB_MROUTERS_ONLY(skb)) { - if ((mdst && mdst->mglist) ||