search for: br_state_learn

Displaying 8 results from an estimated 8 matches for "br_state_learn".

Did you mean: br_state_lea
2007 Apr 18
0
[Bridge] [PATCH] (4/6) bridge: prevent bad forwarding table updates
...d spoofing */ + br_fdb_update(p->br, p, eth_hdr(skb)->h_source); + if (br->dev->flags & IFF_PROMISC) { struct sk_buff *skb2; @@ -108,8 +111,7 @@ int br_handle_frame(struct net_bridge_po if (!is_valid_ether_addr(eth_hdr(skb)->h_source)) goto err; - if (p->state == BR_STATE_LEARNING || - p->state == BR_STATE_FORWARDING) + if (p->state == BR_STATE_LEARNING) br_fdb_update(p->br, p, eth_hdr(skb)->h_source); if (p->br->stp_enabled && Index: bridge/net/bridge/br_stp_bpdu.c =================================================================== --...
2007 Apr 18
1
[Bridge] Bridge port states
Hi all, Can anyone explain me why we need all this per port state information. A bridge port seems to be either in BR_STATE_LISTENING, BR_STATE_LEARNING or BR_STATE_FORWARDING. I don't get it, thought the bridge is learning from MAC addresses of the received packets, therefore while listening. Why a bridge port distinquishes these states? Thanx, Patrick
2007 Apr 18
0
[Bridge] Bridging with STP seems to learn mac-address on wrong ports
...rnel 2.6.11.12 and 2.6.13.2, and both exhibit this problem. The following fix solved it for me on 2.6.11.12: In net/bridge/br_stp_bpdu.c, in function br_stp_handle_bpdu i changed br_fdb_insert(p->br, p, eth_hdr(skb)->h_source,0); to if (!br->stp_enabled || p->state == BR_STATE_LEARNING || p->state == BR_STATE_FORWARDING) br_fdb_insert(p->br, p, eth_hdr(skb)->h_source, 0); /B
2009 Jun 15
1
[Bridge] [PATCH][RFC] net/bridge: add basic VEPA support
...+ /* + * If we are a VEPA, and the receiving port is not the uplink we + * simply want to send this frame to the uplink (after learning) + */ + if ((br->flags & BR_VEPA_MODE) && p != br->uplink) { + br_vepa_deliver(br->uplink, skb); + goto out; + } + if (p->state == BR_STATE_LEARNING) goto drop; diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h index b6c3b71..0c7ee4c 100644 --- a/net/bridge/br_private.h +++ b/net/bridge/br_private.h @@ -82,6 +82,9 @@ struct net_bridge_port struct timer_list message_age_timer; struct kobject kobj; struct rcu_head...
2009 Jun 15
1
[Bridge] [PATCH][RFC] net/bridge: add basic VEPA support
...+ /* + * If we are a VEPA, and the receiving port is not the uplink we + * simply want to send this frame to the uplink (after learning) + */ + if ((br->flags & BR_VEPA_MODE) && p != br->uplink) { + br_vepa_deliver(br->uplink, skb); + goto out; + } + if (p->state == BR_STATE_LEARNING) goto drop; diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h index b6c3b71..0c7ee4c 100644 --- a/net/bridge/br_private.h +++ b/net/bridge/br_private.h @@ -82,6 +82,9 @@ struct net_bridge_port struct timer_list message_age_timer; struct kobject kobj; struct rcu_head...
2009 Jun 15
1
[Bridge] [PATCH][RFC] net/bridge: add basic VEPA support
...+ /* + * If we are a VEPA, and the receiving port is not the uplink we + * simply want to send this frame to the uplink (after learning) + */ + if ((br->flags & BR_VEPA_MODE) && p != br->uplink) { + br_vepa_deliver(br->uplink, skb); + goto out; + } + if (p->state == BR_STATE_LEARNING) goto drop; diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h index b6c3b71..0c7ee4c 100644 --- a/net/bridge/br_private.h +++ b/net/bridge/br_private.h @@ -82,6 +82,9 @@ struct net_bridge_port struct timer_list message_age_timer; struct kobject kobj; struct rcu_head...
2007 Aug 23
3
[Bridge] bridge problem when one interface is in blocking mode
Hi, We have a simple bridge setup but the ping (and other network traffic) does not work reliably. After tracing the code, it looks like a software bug. Since bridge software is been running by thousands of people. I guess I am wrong. Anyway, here is the problem. There are 2 boxes and each one has 2 interfaces, 1 ethernet and 1 wifi. STP is enabled for the bridge to avoid the loop. So the box 1
2007 Apr 18
5
[Bridge] RFC: [PATCH] bridge vlan integration
...ev = br->dev; + if (br_vlan_output_frame(&skb, br->vlan.untagged)) + return; + NF_HOOK(PF_BRIDGE, NF_BR_LOCAL_IN, skb, indev, NULL, netif_receive_skb); } @@ -136,6 +144,10 @@ int br_handle_frame(struct net_bridge_po } if (p->state == BR_STATE_FORWARDING || p->state == BR_STATE_LEARNING) { + if (br_vlan_input_frame(skb, &p->vlan)) { + return 1; + } + if (br_should_route_hook) { if (br_should_route_hook(pskb)) return 0; Index: wireless-dev/net/bridge/br_ioctl.c =================================================================== --- wireless-dev.orig/net/b...