aboutsummaryrefslogtreecommitdiff
path: root/pcap-dlpi.c
diff options
context:
space:
mode:
authorguy <guy>2003-11-21 10:19:33 +0000
committerguy <guy>2003-11-21 10:19:33 +0000
commitc98ffbcabf992f4925d904e9d4e7960be069ef15 (patch)
tree6ad557801720978af1ec3a0c6cb003799fde3e51 /pcap-dlpi.c
parent2c618b93a0ed7ede8a1cf90e425b343c25265dc3 (diff)
Add a "pcap_get_selectable_fd()" API to get an FD on which you can do a
"select()" or "poll()" - or -1 if that won't work.
Diffstat (limited to 'pcap-dlpi.c')
-rw-r--r--pcap-dlpi.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/pcap-dlpi.c b/pcap-dlpi.c
index 4a9eafd4..1e7055b6 100644
--- a/pcap-dlpi.c
+++ b/pcap-dlpi.c
@@ -38,7 +38,7 @@
#ifndef lint
static const char rcsid[] _U_ =
- "@(#) $Header: /tcpdump/master/libpcap/pcap-dlpi.c,v 1.93 2003-11-20 02:02:38 guy Exp $ (LBL)";
+ "@(#) $Header: /tcpdump/master/libpcap/pcap-dlpi.c,v 1.94 2003-11-21 10:19:34 guy Exp $ (LBL)";
#endif
#ifdef HAVE_CONFIG_H
@@ -704,6 +704,12 @@ pcap_open_live(const char *device, int snaplen, int promisc, int to_ms,
goto bad;
}
+ /*
+ * "p->fd" is an FD for a STREAMS device, so "select()" and
+ * "poll()" should work on it.
+ */
+ p->selectable_fd = p->fd;
+
p->read_op = pcap_read_dlpi;
p->setfilter_op = install_bpf_program; /* no kernel filtering */
p->set_datalink_op = NULL; /* can't change data link type */