28 RCSIDH(pcap_h,
"$Id: 15220776747c682f4f947d159e8362faa7736445 $")
30 #include <freeradius-devel/libradius.h>
31 #include <freeradius-devel/net.h>
33 #include <sys/types.h>
40 #define SNAPLEN ETHER_HDR_LEN + IP_HDR_LEN + sizeof(struct udp_header) + MAX_RADIUS_LEN
41 #define PCAP_BUFFER_DEFAULT (10000)
46 # define PCAP_NONBLOCK_TIMEOUT (0)
48 # define PCAP_NONBLOCK_TIMEOUT (-1)
52 # define BIOCIMMEDIATE (2147762800)
58 #ifndef PCAP_NETMASK_UNKNOWN
59 # define PCAP_NETMASK_UNKNOWN 0
76 typedef struct fr_pcap fr_pcap_t;
78 char errbuf[PCAP_ERRBUF_SIZE];
90 pcap_dumper_t *dumper;
95 struct pcap_stat pstats;
100 int fr_pcap_if_link_layer(
char *errbuff, pcap_if_t *dev);
101 fr_pcap_t *fr_pcap_init(TALLOC_CTX *ctx,
char const *
name, fr_pcap_type_t type);
102 int fr_pcap_open(fr_pcap_t *handle);
103 int fr_pcap_apply_filter(fr_pcap_t *handle,
char const *expression);
104 char *fr_pcap_device_names(TALLOC_CTX *ctx, fr_pcap_t *handle,
char c);
105 int fr_pcap_mac_addr(uint8_t *macaddr,
char *ifname);