[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <BANLkTimdK-5tsWcTFbe_-82fHxr4TN4F_g@mail.gmail.com>
Date: Thu, 2 Jun 2011 16:59:13 +0100
From: Nick Carter <ncarter100@...il.com>
To: netdev@...r.kernel.org
Cc: benjamin.poirier@...il.com, davem@...emloft.net,
shemminger@...ux-foundation.org
Subject: [PATCH] bridge: Forward EAPOL when STP off
Signed-off-by: Nick Carter <ncarter100@...il.com>
If STP is disabled then forward frames destined to the 802.1X PAE group
address (01-80-C2-00-00-03)
This change is required to support virtual machines running an 802.1X
supplicant and bridged to an ethernet interface.
This change has been tested and works fine with a range of supplicants.
I don't think this change will break 802.3ad bonding inside of a bridge.
[See commit f01cb5fbea1c1613621f9f32f385e12c1a29dde0
Revert "bridge: Forward reserved group addresses if !STP"]
Bonding uses the IEEE Std 802.3ad Slow_Protocols_Multicast address
"#define MULTICAST_LACPDU_ADDR {0x01, 0x80, 0xC2, 0x00, 0x00, 0x02}"
Which will not be caught by this patch.
---
net/bridge/br_input.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/net/bridge/br_input.c b/net/bridge/br_input.c
index f3ac1e8..d6b4479 100644
--- a/net/bridge/br_input.c
+++ b/net/bridge/br_input.c
@@ -165,7 +165,9 @@ rx_handler_result_t br_handle_frame(struct sk_buff **pskb)
goto drop;
/* If STP is turned off, then forward */
- if (p->br->stp_enabled == BR_NO_STP && dest[5] == 0)
+ if (p->br->stp_enabled == BR_NO_STP &&
+ (dest[5] == 0 || /* Bridge group address */
+ dest[5] == 3)) /* 802.1X PAE address */
goto forward;
if (NF_HOOK(NFPROTO_BRIDGE, NF_BR_LOCAL_IN, skb, skb->dev,
--
1.7.4.1
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists