diff options
Diffstat (limited to 'pcap_set_protocol_linux.3pcap')
-rw-r--r-- | pcap_set_protocol_linux.3pcap | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/pcap_set_protocol_linux.3pcap b/pcap_set_protocol_linux.3pcap new file mode 100644 index 0000000..873017b --- /dev/null +++ b/pcap_set_protocol_linux.3pcap @@ -0,0 +1,68 @@ +.\" 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_PROTOCOL_LINUX 3PCAP "24 August 2017" +.SH NAME +pcap_set_protocol_linux \- set capture protocol for a not-yet-activated +capture handle +.SH SYNOPSIS +.nf +.ft B +#include <pcap/pcap.h> +.LP +.ft B +int pcap_set_protocol_linux(pcap_t *p, int protocol); +.ft +.fi +.SH DESCRIPTION +On network interface devices on Linux, +.B pcap_set_protocol_linux() +sets the protocol to be used in the +.BR socket (2) +call to create a capture socket when the handle is activated. The +argument is a link-layer protocol value, such as the values in the +.B <linux/if_ether.h> +header file, specified in host byte order. +If +.I protocol +is non-zero, packets of that protocol will be captured when the +handle is activated, otherwise, all packets will be captured. This +function is only provided on Linux, and, if it is used on any device +other than a network interface, it will have no effect. +.LP +It should not be used in portable code; instead, a filter should be +specified with +.BR pcap_setfilter(3PCAP) . +.LP +If a given network interface provides a standard link-layer header, with +a standard packet type, but provides some packet types with a different +socket-layer protocol type from the one in the link-layer header, that +packet type cannot be filtered with a filter specified with +.B pcap_setfilter() +but can be filtered by specifying the socket-layer protocol type using +.BR pcap_set_protocol_linux() . +.SH RETURN VALUE +.B pcap_set_protocol_linux() +returns 0 on success or +.B PCAP_ERROR_ACTIVATED +if called on a capture handle that has been activated. +.SH BACKWARD COMPATIBILITY +This function became available in libpcap release 1.9.0. +.SH SEE ALSO +pcap(3PCAP), pcap_create(3PCAP), pcap_activate(3PCAP) |