summaryrefslogtreecommitdiffstats
path: root/sys/net/if_ethersubr.c
diff options
context:
space:
mode:
authormdodd <mdodd@FreeBSD.org>2003-03-15 19:37:44 +0000
committermdodd <mdodd@FreeBSD.org>2003-03-15 19:37:44 +0000
commitaf74801cd58a3203e9b222bff7d948bbdff6277f (patch)
treed2b672462f92a17f4c571c0d1453cf55876cf6d0 /sys/net/if_ethersubr.c
parent46d76d5c4c986373f10170b8e7cb6c48b5ca944a (diff)
downloadFreeBSD-src-af74801cd58a3203e9b222bff7d948bbdff6277f.zip
FreeBSD-src-af74801cd58a3203e9b222bff7d948bbdff6277f.tar.gz
Reduce code differences.
Diffstat (limited to 'sys/net/if_ethersubr.c')
-rw-r--r--sys/net/if_ethersubr.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/net/if_ethersubr.c b/sys/net/if_ethersubr.c
index 725b669..b3751a9 100644
--- a/sys/net/if_ethersubr.c
+++ b/sys/net/if_ethersubr.c
@@ -275,16 +275,18 @@ ether_output(ifp, m, dst, rt0)
csum_flags |= (CSUM_IP_CHECKED|CSUM_IP_VALID);
if (m->m_pkthdr.csum_flags & CSUM_DELAY_DATA)
csum_flags |= (CSUM_DATA_VALID|CSUM_PSEUDO_HDR);
+
if ((m->m_flags & M_BCAST) || (loop_copy > 0)) {
- struct mbuf *n = m_copy(m, 0, (int)M_COPYALL);
+ struct mbuf *n;
+ n = m_copy(m, 0, (int)M_COPYALL);
n->m_pkthdr.csum_flags |= csum_flags;
if (csum_flags & CSUM_DATA_VALID)
n->m_pkthdr.csum_data = 0xffff;
(void) if_simloop(ifp, n, dst->sa_family, hlen);
- } else if (bcmp(eh->ether_dhost,
- eh->ether_shost, ETHER_ADDR_LEN) == 0) {
+ } else if (bcmp(eh->ether_dhost, eh->ether_shost,
+ ETHER_ADDR_LEN) == 0) {
m->m_pkthdr.csum_flags |= csum_flags;
if (csum_flags & CSUM_DATA_VALID)
m->m_pkthdr.csum_data = 0xffff;
OpenPOWER on IntegriCloud