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 _XT_SET_H
20 #define _XT_SET_H
21 #include <linux/types.h>
22 #include <linux/netfilter/ipset/ip_set.h>
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24 #define IPSET_SRC 0x01
25 #define IPSET_DST 0x02
26 #define IPSET_MATCH_INV 0x04
27 struct xt_set_info_v0 {
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29   ip_set_id_t index;
30   union {
31     __u32 flags[IPSET_DIM_MAX + 1];
32     struct {
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34       __u32 __flags[IPSET_DIM_MAX];
35       __u8 dim;
36       __u8 flags;
37     } compat;
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39   } u;
40 };
41 struct xt_set_info_match_v0 {
42   struct xt_set_info_v0 match_set;
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44 };
45 struct xt_set_info_target_v0 {
46   struct xt_set_info_v0 add_set;
47   struct xt_set_info_v0 del_set;
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 };
50 struct xt_set_info {
51   ip_set_id_t index;
52   __u8 dim;
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54   __u8 flags;
55 };
56 struct xt_set_info_match_v1 {
57   struct xt_set_info match_set;
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59 };
60 struct xt_set_info_target_v1 {
61   struct xt_set_info add_set;
62   struct xt_set_info del_set;
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64 };
65 struct xt_set_info_target_v2 {
66   struct xt_set_info add_set;
67   struct xt_set_info del_set;
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69   __u32 flags;
70   __u32 timeout;
71 };
72 struct xt_set_info_match_v3 {
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74   struct xt_set_info match_set;
75   struct ip_set_counter_match0 packets;
76   struct ip_set_counter_match0 bytes;
77   __u32 flags;
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 };
80 struct xt_set_info_target_v3 {
81   struct xt_set_info add_set;
82   struct xt_set_info del_set;
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84   struct xt_set_info map_set;
85   __u32 flags;
86   __u32 timeout;
87 };
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89 struct xt_set_info_match_v4 {
90   struct xt_set_info match_set;
91   struct ip_set_counter_match packets;
92   struct ip_set_counter_match bytes;
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94   __u32 flags;
95 };
96 #endif
97