pcap_set_immediate_mode(3PCAP) man page

Updated: 27 January 2024 • View in plain textReturn to Main Contents

This man page documents libpcap version 1.11.0-PRE-GIT (see also: 1.10.4, 1.10.2, 1.10.1, 1.10.0, 1.9.1, 1.8.1, 1.7.4, 1.6.2, 1.5.3).

Your system may have a different version installed, possibly with some local modifications. To achieve the best results, please make sure this version of this man page suits your needs. If necessary, try to look for a different version on this web site or in the man pages available in your installation.


pcap_set_immediate_mode - set immediate mode for a not-yet-activated capture handle


#include <pcap/pcap.h>

int pcap_set_immediate_mode(pcap_t *p, int immediate_mode);


pcap_set_immediate_mode() sets whether immediate mode should be set on a capture handle when the handle is activated. In immediate mode, packets are always delivered as soon as they arrive, with no buffering. If immediate_mode is non-zero, immediate mode will be set, otherwise it will not be set.


pcap_set_immediate_mode() returns 0 on success or PCAP_ERROR_ACTIVATED if called on a capture handle that has been activated.


This function became available in libpcap release 1.5.0. In previous releases, if immediate delivery of packets is required:

on FreeBSD, NetBSD, OpenBSD, DragonFly BSD, macOS, and Solaris 11, immediate mode must be turned on with a BIOCIMMEDIATE ioctl(2), as documented in bpf(4), on the descriptor returned by pcap_fileno(3PCAP), after pcap_activate(3PCAP) is called;
on Solaris 10 and earlier versions of Solaris, immediate mode must be turned on by using a read timeout of 0 when opening the device (this will not provide immediate delivery of packets on other platforms, so don't assume it's sufficient);
on Windows, immediate mode must be turned on by calling pcap_setmintocopy() with a size of 0.

On Linux, with previous releases of libpcap, capture devices are always in immediate mode; however, in 1.5.0 and later, they are, by default, not in immediate mode, so if pcap_set_immediate_mode() is available, it should be used.

On other platforms, capture devices are always in immediate mode.


pcap(3PCAP), pcap_create(3PCAP), pcap_activate(3PCAP)


This HTML man page was generated at 15:49:22 GMT, February 01, 2024 from a source man page in "The Tcpdump Group" git repositories using man2html and other tools.