diff options
| author | Justin Hibbits <jhibbits@FreeBSD.org> | 2023-01-12 20:17:33 +0000 |
|---|---|---|
| committer | Justin Hibbits <jhibbits@FreeBSD.org> | 2023-01-31 20:02:14 +0000 |
| commit | 950cc1f44fbd5965db7b679c0aaf1bd9b432ec25 (patch) | |
| tree | 3bd7d9e08b21d4ec78f92cac14b0291629f69720 /sys/net/bpf.h | |
| parent | 1bfa548b1f1687f16a738590ee88843ed3c73ae8 (diff) | |
Diffstat (limited to 'sys/net/bpf.h')
| -rw-r--r-- | sys/net/bpf.h | 27 |
1 files changed, 10 insertions, 17 deletions
diff --git a/sys/net/bpf.h b/sys/net/bpf.h index e5b8898188f1..279d2f65e7fc 100644 --- a/sys/net/bpf.h +++ b/sys/net/bpf.h @@ -53,6 +53,7 @@ typedef int32_t bpf_int32; typedef u_int32_t bpf_u_int32; typedef int64_t bpf_int64; typedef u_int64_t bpf_u_int64; +struct ifnet; /* * Alignment macros. BPF_WORDALIGN rounds up to the next multiple of @@ -421,8 +422,11 @@ struct bpf_if_ext { void bpf_bufheld(struct bpf_d *d); int bpf_validate(const struct bpf_insn *, int); void bpf_tap(struct bpf_if *, u_char *, u_int); +void bpf_tap_if(struct ifnet *, u_char *, u_int); void bpf_mtap(struct bpf_if *, struct mbuf *); +void bpf_mtap_if(struct ifnet *, struct mbuf *); void bpf_mtap2(struct bpf_if *, void *, u_int, struct mbuf *); +void bpf_mtap2_if(struct ifnet *, void *, u_int, struct mbuf *); void bpfattach(struct ifnet *, u_int, u_int); void bpfattach2(struct ifnet *, u_int, u_int, struct bpf_if **); void bpfdetach(struct ifnet *); @@ -444,22 +448,12 @@ bpf_peers_present(struct bpf_if *bpf) return (0); } -#define BPF_TAP(_ifp,_pkt,_pktlen) do { \ - if (bpf_peers_present((_ifp)->if_bpf)) \ - bpf_tap((_ifp)->if_bpf, (_pkt), (_pktlen)); \ -} while (0) -#define BPF_MTAP(_ifp,_m) do { \ - if (bpf_peers_present((_ifp)->if_bpf)) { \ - M_ASSERTVALID(_m); \ - bpf_mtap((_ifp)->if_bpf, (_m)); \ - } \ -} while (0) -#define BPF_MTAP2(_ifp,_data,_dlen,_m) do { \ - if (bpf_peers_present((_ifp)->if_bpf)) { \ - M_ASSERTVALID(_m); \ - bpf_mtap2((_ifp)->if_bpf,(_data),(_dlen),(_m)); \ - } \ -} while (0) +#define BPF_TAP(_ifp,_pkt,_pktlen) \ + bpf_tap_if((_ifp), (_pkt), (_pktlen)) +#define BPF_MTAP(_ifp,_m) \ + bpf_mtap_if((_ifp), (_m)) +#define BPF_MTAP2(_ifp,_data,_dlen,_m) \ + bpf_mtap2_if((_ifp), (_data), (_dlen), (_m)) #endif /* @@ -468,7 +462,6 @@ bpf_peers_present(struct bpf_if *bpf) #define BPF_MEMWORDS 16 /* BPF attach/detach events */ -struct ifnet; typedef void (*bpf_track_fn)(void *, struct ifnet *, int /* dlt */, int /* 1 =>'s attach */); EVENTHANDLER_DECLARE(bpf_track, bpf_track_fn); |
