Home | History | Annotate | Download | only in netfilter_ipv4
      1 /****************************************************************************
      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  ***
     10  ***   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  ***
     17  ****************************************************************************
     18  ****************************************************************************/
     19 #ifndef _IP_QUEUE_H
     20 #define _IP_QUEUE_H
     21 #include <net/if.h>
     22 typedef struct ipq_packet_msg {
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24  unsigned long packet_id;
     25  unsigned long mark;
     26  long timestamp_sec;
     27  long timestamp_usec;
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29  unsigned int hook;
     30  char indev_name[IFNAMSIZ];
     31  char outdev_name[IFNAMSIZ];
     32  unsigned short hw_protocol;
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34  unsigned short hw_type;
     35  unsigned char hw_addrlen;
     36  unsigned char hw_addr[8];
     37  size_t data_len;
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39  unsigned char payload[0];
     40 } ipq_packet_msg_t;
     41 typedef struct ipq_mode_msg {
     42  unsigned char value;
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44  size_t range;
     45 } ipq_mode_msg_t;
     46 typedef struct ipq_verdict_msg {
     47  unsigned int value;
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49  unsigned long id;
     50  size_t data_len;
     51  unsigned char payload[0];
     52 } ipq_verdict_msg_t;
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54 typedef struct ipq_peer_msg {
     55  union {
     56  ipq_verdict_msg_t verdict;
     57  ipq_mode_msg_t mode;
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59  } msg;
     60 } ipq_peer_msg_t;
     61 enum {
     62  IPQ_COPY_NONE,
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64  IPQ_COPY_META,
     65  IPQ_COPY_PACKET
     66 };
     67 #define IPQ_COPY_MAX IPQ_COPY_PACKET
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69 #define IPQM_BASE 0x10
     70 #define IPQM_MODE (IPQM_BASE + 1)
     71 #define IPQM_VERDICT (IPQM_BASE + 2)
     72 #define IPQM_PACKET (IPQM_BASE + 3)
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74 #define IPQM_MAX (IPQM_BASE + 4)
     75 #endif
     76