| .\" |
| .\" Copyright (c) 1994, 1996, 1997 |
| .\" The Regents of the University of California. All rights reserved. |
| .\" |
| .\" Redistribution and use in source and binary forms, with or without |
| .\" modification, are permitted provided that: (1) source code distributions |
| .\" retain the above copyright notice and this paragraph in its entirety, (2) |
| .\" distributions including binary code include the above copyright notice and |
| .\" this paragraph in its entirety in the documentation or other materials |
| .\" provided with the distribution, and (3) all advertising materials mentioning |
| .\" features or use of this software display the following acknowledgement: |
| .\" ``This product includes software developed by the University of California, |
| .\" Lawrence Berkeley Laboratory and its contributors.'' Neither the name of |
| .\" the University nor the names of its contributors may be used to endorse |
| .\" or promote products derived from this software without specific prior |
| .\" written permission. |
| .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED |
| .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF |
| .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. |
| .\" |
| .TH PCAP_SET_IMMEDIATE_MODE 3PCAP "23 August 2018" |
| .SH NAME |
| pcap_set_immediate_mode \- set immediate mode for a not-yet-activated capture |
| handle |
| .SH SYNOPSIS |
| .nf |
| .ft B |
| #include <pcap/pcap.h> |
| .LP |
| .ft B |
| int pcap_set_immediate_mode(pcap_t *p, int immediate_mode); |
| .ft |
| .fi |
| .SH DESCRIPTION |
| .BR 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 |
| .I immediate_mode |
| is non-zero, immediate mode will be set, otherwise it will not be set. |
| .SH RETURN VALUE |
| .BR pcap_set_immediate_mode () |
| returns |
| .B 0 |
| on success or |
| .B PCAP_ERROR_ACTIVATED |
| if called on a capture handle that has been activated. |
| .SH BACKWARD COMPATIBILITY |
| .PP |
| This function became available in libpcap release 1.5.0. In previous |
| releases, if immediate delivery of packets is required: |
| .IP |
| on FreeBSD, NetBSD, OpenBSD, DragonFly BSD, macOS, and Solaris 11, |
| immediate mode must be turned on with a |
| .B BIOCIMMEDIATE |
| .BR ioctl (2), |
| as documented in |
| .BR bpf (@MAN_DEVICES@), |
| on the descriptor returned by |
| .BR pcap_fileno (3PCAP), |
| after |
| .BR pcap_activate (3PCAP) |
| is called; |
| .IP |
| 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); |
| .IP |
| on Digital UNIX/Tru64 UNIX, immediate mode must be turned on by doing a |
| .B BIOCMBIC |
| .BR ioctl (), |
| as documented in |
| .BR packetfilter (7), |
| to clear the |
| .B ENBATCH |
| flag on the descriptor returned by |
| .BR pcap_fileno (3PCAP), |
| after |
| .BR pcap_activate (3PCAP) |
| is called; |
| .IP |
| on Windows, immediate mode must be turned on by calling |
| .BR pcap_setmintocopy () |
| with a size of 0. |
| .PP |
| 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, |
| .B not |
| in immediate mode, so if |
| .BR pcap_set_immediate_mode () |
| is available, it should be used. |
| .PP |
| On other platforms, capture devices are always in immediate mode. |
| .SH SEE ALSO |
| .BR pcap (3PCAP), |
| .BR pcap_create (3PCAP), |
| .BR pcap_activate (3PCAP) |