12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- .\" 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() .
- .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 SEE ALSO
- pcap(3PCAP), pcap_create(3PCAP), pcap_activate(3PCAP), socket(2),
- pcap_setfilter(3PCAP)
|