Mike Kershaw <dragorn at kismetwireless dot net>
Mike Wiacek <mike at iroot dot net>
Monroe Williams <monroe at pobox dot com>
+ N. Leiten <nleiten at sourceforge dot net>
Nicolas Dade <ndade at nsd dot dyndns dot org>
Octavian Cerna <tavy at ylabs dot com>
Olaf Kirch <okir at caldera dot de>
.B poll()
and kqueues work on that descriptor in Mac OS X 10.6 and later.
.PP
-On Linux, if the network interface on which you're capturing disappears
-(e.g., if a USB interface is unplugged), select) will return an
-indication that the descriptor has data available to read. If libpcap
-is not using memory-mapped mode to capture, the attempt to read the next
-packet will return an error; however, if it is using memory-mapped mode
-to capture, which it will do if the kernel includes support for
-memory-mapped mode, no packet or error will be returned if you have put
-the
-.B pcap_t
-into non-blocking mode. You must use
-.B poll()
-in this case;
-.B poll()
-will return a
-.B POLLERR
-indication; a
-.BR recv (2),
-.BR recvfrom(2),
-or
-.BR recvmsg (2)
-on the descriptor will return \-1 and set
-.B errno
-to
-.B ENETDOWN.
-.PP
.B pcap_get_selectable_fd()
is not available on Windows.
.SH RETURN VALUE
A selectable file descriptor is returned if one exists; otherwise, \-1
is returned.
.SH SEE ALSO
-pcap(3PCAP), select(2), poll(2), recv(2)
+pcap(3PCAP), select(2), poll(2)