diff options
author | ru <ru@FreeBSD.org> | 2006-02-11 20:25:00 +0000 |
---|---|---|
committer | ru <ru@FreeBSD.org> | 2006-02-11 20:25:00 +0000 |
commit | ed21a0cb06b78a3981925a8881a5954eb3a50643 (patch) | |
tree | e6b5781783d6d2a9b16b77df93390133fbe07a86 /sys/netgraph/ng_eiface.c | |
parent | ac97d94d79c75ccd21c3a0c3653a602fe963e4da (diff) | |
download | FreeBSD-src-ed21a0cb06b78a3981925a8881a5954eb3a50643.zip FreeBSD-src-ed21a0cb06b78a3981925a8881a5954eb3a50643.tar.gz |
Don't count output bytes twice (the byte accouting is done
in if.c). Count output errors.
MFC after: 3 days
Diffstat (limited to 'sys/netgraph/ng_eiface.c')
-rw-r--r-- | sys/netgraph/ng_eiface.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/sys/netgraph/ng_eiface.c b/sys/netgraph/ng_eiface.c index 3ecda10..1e0f0b3 100644 --- a/sys/netgraph/ng_eiface.c +++ b/sys/netgraph/ng_eiface.c @@ -208,7 +208,7 @@ ng_eiface_start2(node_p node, hook_p hook, void *arg1, int arg2) { struct ifnet *ifp = arg1; const priv_p priv = (priv_p)ifp->if_softc; - int len, error = 0; + int error = 0; struct mbuf *m; /* Check interface flags */ @@ -234,9 +234,6 @@ ng_eiface_start2(node_p node, hook_p hook, void *arg1, int arg2) */ BPF_MTAP(ifp, m); - /* Copy length before the mbuf gets invalidated */ - len = m->m_pkthdr.len; - /* * Send packet; if hook is not connected, mbuf will get * freed. @@ -244,10 +241,10 @@ ng_eiface_start2(node_p node, hook_p hook, void *arg1, int arg2) NG_SEND_DATA_ONLY(error, priv->ether, m); /* Update stats */ - if (error == 0) { - ifp->if_obytes += len; + if (error == 0) ifp->if_opackets++; - } + else + ifp->if_oerrors++; } ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; |