PCAP_GET_REQUIRED_SELECT_TIMEOUT(3) | Library Functions Manual | PCAP_GET_REQUIRED_SELECT_TIMEOUT(3) |
#include <pcap/pcap.h>
struct timeval *pcap_get_required_select_timeout(pcap_t *p);
The timeout that should be used in those calls must be no larger than the smallest of all timeouts returned by pcap_get_required_select_timeout() for devices from which packets will be captured.
The device for which pcap_get_selectable_fd() returned PCAP_ERROR must be put in non-blocking mode with pcap_setnonblock(3), and an attempt must always be made to read packets from the device when the select(), poll(), epoll_wait(), or kevent() call returns.
Note that a device on which a read can be done without blocking may, on some platforms, not have any packets to read if the packet buffer timeout has expired. A call to pcap_dispatch(3) or pcap_next_ex(3) will return 0 in this case, but will not block.
pcap_get_required_select_timeout() is not available on Windows.
25 July 2018 |