b00ab7548b
MFC after: 1 month Sponsored by: Mellanox Technologies
68 lines
2.7 KiB
Plaintext
68 lines
2.7 KiB
Plaintext
.\" 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 3PCAP "3 January 2014"
|
|
.SH NAME
|
|
pcap_set_protocol \- 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(pcap_t *p, int protocol);
|
|
.ft
|
|
.fi
|
|
.SH DESCRIPTION
|
|
On network interface devices on Linux,
|
|
.B pcap_set_protocol()
|
|
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() .
|
|
.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() .
|
|
.SH RETURN VALUE
|
|
.B pcap_set_protocol()
|
|
returns 0 on success or
|
|
.B PCAP_ERROR_ACTIVATED
|
|
if called on a capture handle that has been activated.
|
|
.SH SEE ALSO
|
|
pcap(3PCAP), pcap_create(3PCAP), pcap_activate(3PCAP), socket(2),
|
|
pcap_setfilter(3PCAP)
|