/[linux-patches]/genpatches-2.6/tags/2.6.15-2/1900_select-correct-bridge-id.patch
Gentoo

Contents of /genpatches-2.6/tags/2.6.15-2/1900_select-correct-bridge-id.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 259 - (show annotations) (download)
Wed Jan 11 21:46:01 2006 UTC (8 years, 11 months ago) by dsd
File size: 1345 byte(s)
2.6.15-2 release
1 From stable-bounces@linux.kernel.org Tue Jan 3 15:31:50 2006
2 Date: Tue, 3 Jan 2006 15:28:05 -0800
3 From: Stephen Hemminger <shemminger@osdl.org>
4 To: stable@kernel.org
5 Message-ID: <20060103152805.39fda518@dxpl.pdx.osdl.net>
6 Cc:
7 Subject: BRIDGE: Fix faulty check in br_stp_recalculate_bridge_id()
8
9 There is a regression in 2.6.15.
10 One of the conversions from memcmp to compare_ether_addr is incorrect.
11 We need to do relative comparison to determine min MAC address to
12 use in bridge id. This will cause the wrong bridge id to be chosen
13 which violates 802.1d Spanning Tree Protocol, and may create forwarding
14 loops.
15
16 Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
17 Signed-off-by: Chris Wright <chrisw@sous-sol.org>
18 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
19 ---
20
21 net/bridge/br_stp_if.c | 2 +-
22 1 files changed, 1 insertion(+), 1 deletion(-)
23
24 Index: linux-2.6.15.y/net/bridge/br_stp_if.c
25 ===================================================================
26 --- linux-2.6.15.y.orig/net/bridge/br_stp_if.c
27 +++ linux-2.6.15.y/net/bridge/br_stp_if.c
28 @@ -158,7 +158,7 @@ void br_stp_recalculate_bridge_id(struct
29
30 list_for_each_entry(p, &br->port_list, list) {
31 if (addr == br_mac_zero ||
32 - compare_ether_addr(p->dev->dev_addr, addr) < 0)
33 + memcmp(p->dev->dev_addr, addr, ETH_ALEN) < 0)
34 addr = p->dev->dev_addr;
35
36 }

  ViewVC Help
Powered by ViewVC 1.1.20