From 2ab37ca0c56a7fa288cc9a8797d49d5f2999834b Mon Sep 17 00:00:00 2001 From: dg Date: Fri, 14 Dec 2001 04:41:07 +0000 Subject: Moved the updating of if_ibytes from ether_demux() to ether_input() to fix a bug where the interface input bytes count wasn't updated when bridging is enabled. MFC after: 3 days --- sys/net/if_ethersubr.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sys/net') diff --git a/sys/net/if_ethersubr.c b/sys/net/if_ethersubr.c index 7b2b365..ceac9c1 100644 --- a/sys/net/if_ethersubr.c +++ b/sys/net/if_ethersubr.c @@ -421,6 +421,8 @@ ether_input(ifp, eh, m) bpf_mtap(ifp, (struct mbuf *)&mh); } + ifp->if_ibytes += m->m_pkthdr.len + sizeof (*eh); + /* Handle ng_ether(4) processing, if any */ if (ng_ether_input_p != NULL) { (*ng_ether_input_p)(ifp, &m, eh); @@ -506,7 +508,6 @@ ether_demux(ifp, eh, m) m_freem(m); return; } - ifp->if_ibytes += m->m_pkthdr.len + sizeof (*eh); if (eh->ether_dhost[0] & 1) { if (bcmp((caddr_t)etherbroadcastaddr, (caddr_t)eh->ether_dhost, sizeof(etherbroadcastaddr)) == 0) -- cgit v1.1