aboutsummaryrefslogtreecommitdiffstats
path: root/pcap-snoop.c
diff options
context:
space:
mode:
authorguy <guy>2003-07-25 05:32:02 +0000
committerguy <guy>2003-07-25 05:32:02 +0000
commitcd0d893ef99fbd6e06311242d8631b8a5cf9502e (patch)
treeae17f58218c26d028d2390c1229b006bb270d415 /pcap-snoop.c
parent08658f1c932c872f1d920e72e62d200471bd80d0 (diff)
Add a "read" function pointer to the pcap_t structure, which handles
reading packets from a pcap_t, and make "pcap_read()" call it. That removes the last place where we have to check for a pcap_t that refers to a DAG card rather than a live capture, so get rid of the "is_dag" flag.
Diffstat (limited to 'pcap-snoop.c')
-rw-r--r--pcap-snoop.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/pcap-snoop.c b/pcap-snoop.c
index f852a78..69c6569 100644
--- a/pcap-snoop.c
+++ b/pcap-snoop.c
@@ -20,7 +20,7 @@
*/
#ifndef lint
static const char rcsid[] =
- "@(#) $Header: /tcpdump/master/libpcap/pcap-snoop.c,v 1.43 2003-07-25 05:07:03 guy Exp $ (LBL)";
+ "@(#) $Header: /tcpdump/master/libpcap/pcap-snoop.c,v 1.44 2003-07-25 05:32:05 guy Exp $ (LBL)";
#endif
#ifdef HAVE_CONFIG_H
@@ -58,8 +58,8 @@ static const char rcsid[] =
#include "os-proto.h"
#endif
-int
-pcap_read(pcap_t *p, int cnt, pcap_handler callback, u_char *user)
+static int
+pcap_read_snoop(pcap_t *p, int cnt, pcap_handler callback, u_char *user)
{
int cc;
register struct snoopheader *sh;
@@ -294,6 +294,7 @@ pcap_open_live(const char *device, int snaplen, int promisc, int to_ms,
goto bad;
}
+ p->read_op = pcap_read_snoop;
p->setfilter_op = install_bpf_program; /* no kernel filtering */
p->set_datalink_op = NULL; /* can't change data link type */
p->stats_op = pcap_stats_snoop;