pcap_get_required_select_timeout - get a file descriptor on which a select() can be done for a live capture
#include <pcap/pcap.h> struct timeval *pcap_get_required_select_timeout(pcap_t *p);
PCAP_GET_REQUIRED_SELECT_TIMEOUT(3pcap) NAME pcap_get_required_select_timeout - get a file descriptor on which a select() can be done for a live capture SYNOPSIS #include <pcap/pcap.h> struct timeval *pcap_get_required_select_timeout(pcap_t *p); DESCRIPTION pcap_get_required_select_timeout() returns, on UNIX, a pointer to a struct timeval containing a value that must be used as the minimum timeout in select(2), poll(2), epoll_wait(2), and kevent() calls if pcap_get_selectable_fd(3PCAP) returns PCAP_ERROR. 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(3PCAP), 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 time- out has expired. A call to pcap_dispatch(3PCAP) or pcap_next_ex(3PCAP) will return 0 in this case, but will not block. pcap_get_required_select_timeout() is not available on Windows. RETURN VALUE A pointer to a struct timeval is returned if the timeout is required; otherwise NULL is returned. BACKWARD COMPATIBILITY This function became available in libpcap release 1.9.0. In previous releases, select(), poll(), epoll_wait(), and kevent() cannot be used on any capture source for which pcap_get_selectable_fd returns -1. ATTRIBUTES See attributes(7) for descriptions of the following attributes: +---------------+------------------------+ |ATTRIBUTE TYPE | ATTRIBUTE VALUE | +---------------+------------------------+ |Availability | system/library/libpcap | +---------------+------------------------+ |Stability | Uncommitted | +---------------+------------------------+ SEE ALSO pcap(3PCAP), pcap_get_selectable_fd(3PCAP), select(2), poll(2), epoll_wait(2), kqueue(2) NOTES Source code for open source software components in Oracle Solaris can be found at https://www.oracle.com/downloads/opensource/solaris-source- code-downloads.html. This software was built from source available at https://github.com/oracle/solaris-userland. The original community source was downloaded from https://www.tcpdump.org/release/libp- cap-1.9.1.tar.gz. Further information about this software can be found on the open source community website at https://www.tcpdump.org/. 25 July 2018 PCAP_GET_REQUIRED_SELECT_TIMEOUT(3pcap)