From 7d77b4e35faa299425c10e8671a8b46bb9cf26ae Mon Sep 17 00:00:00 2001 From: thompsa Date: Sat, 4 Nov 2006 10:40:59 +0000 Subject: When the packet is for the bridge then note which interface to send the reply to, previously it was always broadcast to all interfaces (a bug). This is useful when the bridge is the default gateway and vlans are used to isolate each client, the reply is now kept private to the vlan which the client resides. Reported by: Jon Otterholm Tested by: Jon Otterholm MFC after: 3 days --- sys/net/if_bridge.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'sys/net') diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c index 5314b6f..da77d97 100644 --- a/sys/net/if_bridge.c +++ b/sys/net/if_bridge.c @@ -2054,6 +2054,11 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) * local processing. */ + /* Note where to send the reply to */ + if (bif->bif_flags & IFBIF_LEARNING) + (void) bridge_rtupdate(sc, + eh->ether_shost, ifp, 0, IFBAF_DYNAMIC); + /* Mark the packet as arriving on the bridge interface */ m->m_pkthdr.rcvif = bifp; BPF_MTAP(bifp, m); -- cgit v1.1