From 0899cb3ec995a823858329d7c27f92f3ea440a0b Mon Sep 17 00:00:00 2001 From: Sepherosa Ziehau Date: Sun, 15 Mar 2009 16:42:07 +0800 Subject: [PATCH] Define M_ETHER_BRIDGED to M_PROTO1 --- sys/net/bridge/if_bridge.c | 4 ++-- sys/net/ethernet.h | 2 ++ sys/net/if_ethersubr.c | 4 ++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/sys/net/bridge/if_bridge.c b/sys/net/bridge/if_bridge.c index 2a23d159d7..3fd1b0e0e8 100644 --- a/sys/net/bridge/if_bridge.c +++ b/sys/net/bridge/if_bridge.c @@ -2181,7 +2181,7 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) eh = mtod(m, struct ether_header *); - m->m_flags &= ~M_PROTO1; /* XXX Hack - loop prevention */ + m->m_flags &= ~M_ETHER_BRIDGED; /* XXX Hack - loop prevention */ if (memcmp(eh->ether_dhost, IF_LLADDR(bifp), ETHER_ADDR_LEN) == 0) { /* @@ -2293,7 +2293,7 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) ETHER_ADDR_LEN) == 0) { if (bif->bif_ifp != ifp) { /* XXX loop prevention */ - m->m_flags |= M_PROTO1; + m->m_flags |= M_ETHER_BRIDGED; new_ifp = bif->bif_ifp; } if (bif->bif_flags & IFBIF_LEARNING) { diff --git a/sys/net/ethernet.h b/sys/net/ethernet.h index efd8166bc5..d7b75a048a 100644 --- a/sys/net/ethernet.h +++ b/sys/net/ethernet.h @@ -356,6 +356,8 @@ extern const uint8_t etherbroadcastaddr[ETHER_ADDR_LEN]; #ifdef _KERNEL +#define M_ETHER_BRIDGED M_PROTO1 + struct ifnet; struct mbuf; struct mbuf_chain; diff --git a/sys/net/if_ethersubr.c b/sys/net/if_ethersubr.c index 1628c43a7f..33628f208d 100644 --- a/sys/net/if_ethersubr.c +++ b/sys/net/if_ethersubr.c @@ -1345,8 +1345,8 @@ ether_input_oncpu(struct ifnet *ifp, struct mbuf *m) KASSERT(bridge_input_p != NULL, ("%s: if_bridge not loaded!", __func__)); - if(m->m_flags & M_PROTO1) { - m->m_flags &= ~M_PROTO1; + if(m->m_flags & M_ETHER_BRIDGED) { + m->m_flags &= ~M_ETHER_BRIDGED; } else { /* clear M_PROMISC, in case the packets comes from a vlan */ /* m->m_flags &= ~M_PROMISC; */ -- 2.41.0