Main Page Modules Data Structures File List Data Fields Globals Related Pages

# Flags defined in the pcap_open() function
[Exported Structures and Definitions]

## Defines
#define | PCAP_OPENFLAG_PROMISCUOUS 1
| It defines if the adapter has to go in promiscuous mode.
#define | PCAP_OPENFLAG_SERVEROPEN_DP 2
| It defines who is responsible for opening the data connection in case of a remote capture (it means 'server open data path').
#define | PCAP_OPENFLAG_UDP_DP 4
| It defines if the data trasfer (in case of a remote capture) has to be done with UDP protocol.

## Detailed Description

## Define Documentation

#define PCAP_OPENFLAG_PROMISCUOUS 1

| It defines if the adapter has to go in promiscuous mode. It is '1' if you have to open the adapter in promiscuous mode, '0' otherwise. Note that even if this parameter is false, the interface could well be in promiscuous mode for some other reason (for example because another capture process with promiscuous mode enabled is currently using that interface). On on Linux systems with 2.2 or later kernels (that have the "any" device), this flag does not work on the "any" device; if an argument of "any" is supplied, the 'promisc' flag is ignored. Definition at line 197 of file remote-ext.h. Referenced by pcap_open_live(), and pcap_startcapture_remote().

#define PCAP_OPENFLAG_SERVEROPEN_DP 2

| It defines who is responsible for opening the data connection in case of a remote capture (it means 'server open data path'). If it is '1', it specifies if the data connection has to be intitiated by the capturing device (which becomes like 'active'). If '0', the connection will be initiated by the client workstation. This flag is used to overcome the problem of firewalls, which allow only outgoing connections. In that case, the capturing device can open a connection toward the client workstation in order to allow the data trasfer. In fact, the data connection is opened using a random port (while the control connection uses a standard port), so it is hard to configure a firewall to permit traffic on the data path. This flag is meaningless if the source is not a remote interface. Addictionally, it is meaningless if the data connection is done using the UDP protocol, since in this case the connection wil always be opened by the server. In these cases, it is simply ignored. Definition at line 219 of file remote-ext.h.

#define PCAP_OPENFLAG_UDP_DP 4

| It defines if the data trasfer (in case of a remote capture) has to be done with UDP protocol. If it is '1' if you want a UDP data connection, '0' if you want a TCP data connection; control connection is always TCP-based. A UDP connection is much lighter, but it does not guarantee that all the captured packets arrive to the client workstation. Moreover, it could be harmful in case of network congestion. This flag is meaningless if the source is not a remote interface. In that case, it is simply ignored. Definition at line 233 of file remote-ext.h. Referenced by pcap_read_nocb_remote(), and pcap_startcapture_remote().

documentation. Copyright (c) 2002-2003 Politecnico di Torino. All rights reserved.