summaryrefslogtreecommitdiffstats
path: root/sys/netatm/atm_cm.c
diff options
context:
space:
mode:
authorharti <harti@FreeBSD.org>2003-07-24 08:15:20 +0000
committerharti <harti@FreeBSD.org>2003-07-24 08:15:20 +0000
commit21804925b22e8dfdb24c092b7313df2d2b7d2097 (patch)
tree5d865fdd2aacd3d8716334448a4da6bb899eafae /sys/netatm/atm_cm.c
parente6af3a1393324f87f4f4865c1bbb1065e3bfc667 (diff)
downloadFreeBSD-src-21804925b22e8dfdb24c092b7313df2d2b7d2097.zip
FreeBSD-src-21804925b22e8dfdb24c092b7313df2d2b7d2097.tar.gz
Add BPF support to HARP network interfaces. This allows one to see
the traffic on LLC multiplexed connections (like CLIP). PR: kern/51831 Submitted by: Vincent Jardin <vjardin@wanadoo.fr> MFC after: 2 weeks
Diffstat (limited to 'sys/netatm/atm_cm.c')
-rw-r--r--sys/netatm/atm_cm.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/netatm/atm_cm.c b/sys/netatm/atm_cm.c
index 8ca491f..f21db37 100644
--- a/sys/netatm/atm_cm.c
+++ b/sys/netatm/atm_cm.c
@@ -41,6 +41,7 @@ __FBSDID("$FreeBSD$");
#include <sys/socketvar.h>
#include <sys/syslog.h>
#include <net/if.h>
+#include <net/bpf.h>
#include <netatm/port.h>
#include <netatm/queue.h>
#include <netatm/atm.h>
@@ -2900,6 +2901,17 @@ atm_cm_cpcs_upper(cmd, tok, arg1, arg2)
case ATM_ENC_LLC:
/*
+ * Send the packet to the interface's bpf if this
+ * vc has one.
+ */
+ if (cvp->cvc_vcc != NULL &&
+ cvp->cvc_vcc->vc_nif != NULL) {
+ struct ifnet *ifp =
+ (struct ifnet *)cvp->cvc_vcc->vc_nif;
+
+ BPF_MTAP(ifp, m);
+ }
+ /*
* Find connection with matching LLC header
*/
if (KB_LEN(m) < T_ATM_LLC_MAX_LEN) {
OpenPOWER on IntegriCloud