blob: c528cdfc98201954fec3bb04da91a3402b3fa89e [file] [log] [blame]
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
Ben Cheng654325d2012-03-07 21:13:49 -080010 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080017 ****************************************************************************
18 ****************************************************************************/
19#ifndef __LINUX_IF_PACKET_H
20#define __LINUX_IF_PACKET_H
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080021struct sockaddr_pkt
22{
Ben Cheng654325d2012-03-07 21:13:49 -080023/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080024 unsigned short spkt_family;
25 unsigned char spkt_device[14];
26 unsigned short spkt_protocol;
27};
Ben Cheng654325d2012-03-07 21:13:49 -080028/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080029struct sockaddr_ll
30{
31 unsigned short sll_family;
32 unsigned short sll_protocol;
Ben Cheng654325d2012-03-07 21:13:49 -080033/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080034 int sll_ifindex;
35 unsigned short sll_hatype;
36 unsigned char sll_pkttype;
37 unsigned char sll_halen;
Ben Cheng654325d2012-03-07 21:13:49 -080038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080039 unsigned char sll_addr[8];
40};
Elliott Hughesc95eb572013-01-29 18:15:55 -080041#define PACKET_HOST 0
42#define PACKET_BROADCAST 1
Ben Cheng654325d2012-03-07 21:13:49 -080043/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesc95eb572013-01-29 18:15:55 -080044#define PACKET_MULTICAST 2
45#define PACKET_OTHERHOST 3
46#define PACKET_OUTGOING 4
47#define PACKET_LOOPBACK 5
Ben Cheng654325d2012-03-07 21:13:49 -080048/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesc95eb572013-01-29 18:15:55 -080049#define PACKET_FASTROUTE 6
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080050#define PACKET_ADD_MEMBERSHIP 1
51#define PACKET_DROP_MEMBERSHIP 2
52#define PACKET_RECV_OUTPUT 3
Ben Cheng654325d2012-03-07 21:13:49 -080053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080054#define PACKET_RX_RING 5
55#define PACKET_STATISTICS 6
56#define PACKET_COPY_THRESH 7
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080057struct tpacket_stats
Ben Cheng654325d2012-03-07 21:13:49 -080058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080059{
60 unsigned int tp_packets;
61 unsigned int tp_drops;
62};
Ben Cheng654325d2012-03-07 21:13:49 -080063/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080064struct tpacket_hdr
65{
66 unsigned long tp_status;
67#define TP_STATUS_KERNEL 0
Ben Cheng654325d2012-03-07 21:13:49 -080068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080069#define TP_STATUS_USER 1
70#define TP_STATUS_COPY 2
71#define TP_STATUS_LOSING 4
72#define TP_STATUS_CSUMNOTREADY 8
Ben Cheng654325d2012-03-07 21:13:49 -080073/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080074 unsigned int tp_len;
75 unsigned int tp_snaplen;
76 unsigned short tp_mac;
77 unsigned short tp_net;
Ben Cheng654325d2012-03-07 21:13:49 -080078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080079 unsigned int tp_sec;
80 unsigned int tp_usec;
81};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080082#define TPACKET_ALIGNMENT 16
Ben Cheng654325d2012-03-07 21:13:49 -080083/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080084#define TPACKET_ALIGN(x) (((x)+TPACKET_ALIGNMENT-1)&~(TPACKET_ALIGNMENT-1))
85#define TPACKET_HDRLEN (TPACKET_ALIGN(sizeof(struct tpacket_hdr)) + sizeof(struct sockaddr_ll))
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080086struct tpacket_req
87{
Ben Cheng654325d2012-03-07 21:13:49 -080088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080089 unsigned int tp_block_size;
90 unsigned int tp_block_nr;
91 unsigned int tp_frame_size;
92 unsigned int tp_frame_nr;
Ben Cheng654325d2012-03-07 21:13:49 -080093/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080094};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080095struct packet_mreq
96{
97 int mr_ifindex;
Ben Cheng654325d2012-03-07 21:13:49 -080098/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080099 unsigned short mr_type;
100 unsigned short mr_alen;
101 unsigned char mr_address[8];
102};
Ben Cheng654325d2012-03-07 21:13:49 -0800103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800104#define PACKET_MR_MULTICAST 0
105#define PACKET_MR_PROMISC 1
106#define PACKET_MR_ALLMULTI 2
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800107#endif
Ben Cheng654325d2012-03-07 21:13:49 -0800108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */