xref: /aosp_15_r20/bionic/libc/kernel/uapi/linux/ip_vs.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1*8d67ca89SAndroid Build Coastguard Worker /*
2*8d67ca89SAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*8d67ca89SAndroid Build Coastguard Worker  *
4*8d67ca89SAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*8d67ca89SAndroid Build Coastguard Worker  * for more information.
6*8d67ca89SAndroid Build Coastguard Worker  */
7*8d67ca89SAndroid Build Coastguard Worker #ifndef _IP_VS_H
8*8d67ca89SAndroid Build Coastguard Worker #define _IP_VS_H
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
10*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_VERSION_CODE 0x010201
11*8d67ca89SAndroid Build Coastguard Worker #define NVERSION(version) (version >> 16) & 0xFF, (version >> 8) & 0xFF, version & 0xFF
12*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SVC_F_PERSISTENT 0x0001
13*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SVC_F_HASHED 0x0002
14*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SVC_F_ONEPACKET 0x0004
15*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SVC_F_SCHED1 0x0008
16*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SVC_F_SCHED2 0x0010
17*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SVC_F_SCHED3 0x0020
18*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SVC_F_SCHED_SH_FALLBACK IP_VS_SVC_F_SCHED1
19*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SVC_F_SCHED_SH_PORT IP_VS_SVC_F_SCHED2
20*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_DEST_F_AVAILABLE 0x0001
21*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_DEST_F_OVERLOAD 0x0002
22*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_STATE_NONE 0x0000
23*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_STATE_MASTER 0x0001
24*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_STATE_BACKUP 0x0002
25*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_BASE_CTL (64 + 1024 + 64)
26*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_NONE IP_VS_BASE_CTL
27*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_INSERT (IP_VS_BASE_CTL + 1)
28*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_ADD (IP_VS_BASE_CTL + 2)
29*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_EDIT (IP_VS_BASE_CTL + 3)
30*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_DEL (IP_VS_BASE_CTL + 4)
31*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_FLUSH (IP_VS_BASE_CTL + 5)
32*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_LIST (IP_VS_BASE_CTL + 6)
33*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_ADDDEST (IP_VS_BASE_CTL + 7)
34*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_DELDEST (IP_VS_BASE_CTL + 8)
35*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_EDITDEST (IP_VS_BASE_CTL + 9)
36*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_TIMEOUT (IP_VS_BASE_CTL + 10)
37*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_STARTDAEMON (IP_VS_BASE_CTL + 11)
38*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_STOPDAEMON (IP_VS_BASE_CTL + 12)
39*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_RESTORE (IP_VS_BASE_CTL + 13)
40*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_SAVE (IP_VS_BASE_CTL + 14)
41*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_ZERO (IP_VS_BASE_CTL + 15)
42*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_SET_MAX IP_VS_SO_SET_ZERO
43*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_GET_VERSION IP_VS_BASE_CTL
44*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_GET_INFO (IP_VS_BASE_CTL + 1)
45*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_GET_SERVICES (IP_VS_BASE_CTL + 2)
46*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_GET_SERVICE (IP_VS_BASE_CTL + 3)
47*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_GET_DESTS (IP_VS_BASE_CTL + 4)
48*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_GET_DEST (IP_VS_BASE_CTL + 5)
49*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_GET_TIMEOUT (IP_VS_BASE_CTL + 6)
50*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_GET_DAEMON (IP_VS_BASE_CTL + 7)
51*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SO_GET_MAX IP_VS_SO_GET_DAEMON
52*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_FWD_MASK 0x0007
53*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_MASQ 0x0000
54*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_LOCALNODE 0x0001
55*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_TUNNEL 0x0002
56*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_DROUTE 0x0003
57*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_BYPASS 0x0004
58*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_SYNC 0x0020
59*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_HASHED 0x0040
60*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_NOOUTPUT 0x0080
61*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_INACTIVE 0x0100
62*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_OUT_SEQ 0x0200
63*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_IN_SEQ 0x0400
64*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_SEQ_MASK 0x0600
65*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_NO_CPORT 0x0800
66*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_TEMPLATE 0x1000
67*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_ONE_PACKET 0x2000
68*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_BACKUP_MASK (IP_VS_CONN_F_FWD_MASK | IP_VS_CONN_F_NOOUTPUT | IP_VS_CONN_F_INACTIVE | IP_VS_CONN_F_SEQ_MASK | IP_VS_CONN_F_NO_CPORT | IP_VS_CONN_F_TEMPLATE)
69*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_BACKUP_UPD_MASK (IP_VS_CONN_F_INACTIVE | IP_VS_CONN_F_SEQ_MASK)
70*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_NFCT (1 << 16)
71*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_CONN_F_DEST_MASK (IP_VS_CONN_F_FWD_MASK | IP_VS_CONN_F_ONE_PACKET | IP_VS_CONN_F_NFCT | 0)
72*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_SCHEDNAME_MAXLEN 16
73*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_PENAME_MAXLEN 16
74*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_IFNAME_MAXLEN 16
75*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_PEDATA_MAXLEN 255
76*8d67ca89SAndroid Build Coastguard Worker enum {
77*8d67ca89SAndroid Build Coastguard Worker   IP_VS_CONN_F_TUNNEL_TYPE_IPIP = 0,
78*8d67ca89SAndroid Build Coastguard Worker   IP_VS_CONN_F_TUNNEL_TYPE_GUE,
79*8d67ca89SAndroid Build Coastguard Worker   IP_VS_CONN_F_TUNNEL_TYPE_GRE,
80*8d67ca89SAndroid Build Coastguard Worker   IP_VS_CONN_F_TUNNEL_TYPE_MAX,
81*8d67ca89SAndroid Build Coastguard Worker };
82*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_TUNNEL_ENCAP_FLAG_NOCSUM (0)
83*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_TUNNEL_ENCAP_FLAG_CSUM (1 << 0)
84*8d67ca89SAndroid Build Coastguard Worker #define IP_VS_TUNNEL_ENCAP_FLAG_REMCSUM (1 << 1)
85*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_service_user {
86*8d67ca89SAndroid Build Coastguard Worker   __u16 protocol;
87*8d67ca89SAndroid Build Coastguard Worker   __be32 addr;
88*8d67ca89SAndroid Build Coastguard Worker   __be16 port;
89*8d67ca89SAndroid Build Coastguard Worker   __u32 fwmark;
90*8d67ca89SAndroid Build Coastguard Worker   char sched_name[IP_VS_SCHEDNAME_MAXLEN];
91*8d67ca89SAndroid Build Coastguard Worker   unsigned int flags;
92*8d67ca89SAndroid Build Coastguard Worker   unsigned int timeout;
93*8d67ca89SAndroid Build Coastguard Worker   __be32 netmask;
94*8d67ca89SAndroid Build Coastguard Worker };
95*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_dest_user {
96*8d67ca89SAndroid Build Coastguard Worker   __be32 addr;
97*8d67ca89SAndroid Build Coastguard Worker   __be16 port;
98*8d67ca89SAndroid Build Coastguard Worker   unsigned int conn_flags;
99*8d67ca89SAndroid Build Coastguard Worker   int weight;
100*8d67ca89SAndroid Build Coastguard Worker   __u32 u_threshold;
101*8d67ca89SAndroid Build Coastguard Worker   __u32 l_threshold;
102*8d67ca89SAndroid Build Coastguard Worker };
103*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_stats_user {
104*8d67ca89SAndroid Build Coastguard Worker   __u32 conns;
105*8d67ca89SAndroid Build Coastguard Worker   __u32 inpkts;
106*8d67ca89SAndroid Build Coastguard Worker   __u32 outpkts;
107*8d67ca89SAndroid Build Coastguard Worker   __u64 inbytes;
108*8d67ca89SAndroid Build Coastguard Worker   __u64 outbytes;
109*8d67ca89SAndroid Build Coastguard Worker   __u32 cps;
110*8d67ca89SAndroid Build Coastguard Worker   __u32 inpps;
111*8d67ca89SAndroid Build Coastguard Worker   __u32 outpps;
112*8d67ca89SAndroid Build Coastguard Worker   __u32 inbps;
113*8d67ca89SAndroid Build Coastguard Worker   __u32 outbps;
114*8d67ca89SAndroid Build Coastguard Worker };
115*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_getinfo {
116*8d67ca89SAndroid Build Coastguard Worker   unsigned int version;
117*8d67ca89SAndroid Build Coastguard Worker   unsigned int size;
118*8d67ca89SAndroid Build Coastguard Worker   unsigned int num_services;
119*8d67ca89SAndroid Build Coastguard Worker };
120*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_service_entry {
121*8d67ca89SAndroid Build Coastguard Worker   __u16 protocol;
122*8d67ca89SAndroid Build Coastguard Worker   __be32 addr;
123*8d67ca89SAndroid Build Coastguard Worker   __be16 port;
124*8d67ca89SAndroid Build Coastguard Worker   __u32 fwmark;
125*8d67ca89SAndroid Build Coastguard Worker   char sched_name[IP_VS_SCHEDNAME_MAXLEN];
126*8d67ca89SAndroid Build Coastguard Worker   unsigned int flags;
127*8d67ca89SAndroid Build Coastguard Worker   unsigned int timeout;
128*8d67ca89SAndroid Build Coastguard Worker   __be32 netmask;
129*8d67ca89SAndroid Build Coastguard Worker   unsigned int num_dests;
130*8d67ca89SAndroid Build Coastguard Worker   struct ip_vs_stats_user stats;
131*8d67ca89SAndroid Build Coastguard Worker };
132*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_dest_entry {
133*8d67ca89SAndroid Build Coastguard Worker   __be32 addr;
134*8d67ca89SAndroid Build Coastguard Worker   __be16 port;
135*8d67ca89SAndroid Build Coastguard Worker   unsigned int conn_flags;
136*8d67ca89SAndroid Build Coastguard Worker   int weight;
137*8d67ca89SAndroid Build Coastguard Worker   __u32 u_threshold;
138*8d67ca89SAndroid Build Coastguard Worker   __u32 l_threshold;
139*8d67ca89SAndroid Build Coastguard Worker   __u32 activeconns;
140*8d67ca89SAndroid Build Coastguard Worker   __u32 inactconns;
141*8d67ca89SAndroid Build Coastguard Worker   __u32 persistconns;
142*8d67ca89SAndroid Build Coastguard Worker   struct ip_vs_stats_user stats;
143*8d67ca89SAndroid Build Coastguard Worker };
144*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_get_dests {
145*8d67ca89SAndroid Build Coastguard Worker   __u16 protocol;
146*8d67ca89SAndroid Build Coastguard Worker   __be32 addr;
147*8d67ca89SAndroid Build Coastguard Worker   __be16 port;
148*8d67ca89SAndroid Build Coastguard Worker   __u32 fwmark;
149*8d67ca89SAndroid Build Coastguard Worker   unsigned int num_dests;
150*8d67ca89SAndroid Build Coastguard Worker   struct ip_vs_dest_entry entrytable[];
151*8d67ca89SAndroid Build Coastguard Worker };
152*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_get_services {
153*8d67ca89SAndroid Build Coastguard Worker   unsigned int num_services;
154*8d67ca89SAndroid Build Coastguard Worker   struct ip_vs_service_entry entrytable[];
155*8d67ca89SAndroid Build Coastguard Worker };
156*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_timeout_user {
157*8d67ca89SAndroid Build Coastguard Worker   int tcp_timeout;
158*8d67ca89SAndroid Build Coastguard Worker   int tcp_fin_timeout;
159*8d67ca89SAndroid Build Coastguard Worker   int udp_timeout;
160*8d67ca89SAndroid Build Coastguard Worker };
161*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_daemon_user {
162*8d67ca89SAndroid Build Coastguard Worker   int state;
163*8d67ca89SAndroid Build Coastguard Worker   char mcast_ifn[IP_VS_IFNAME_MAXLEN];
164*8d67ca89SAndroid Build Coastguard Worker   int syncid;
165*8d67ca89SAndroid Build Coastguard Worker };
166*8d67ca89SAndroid Build Coastguard Worker #define IPVS_GENL_NAME "IPVS"
167*8d67ca89SAndroid Build Coastguard Worker #define IPVS_GENL_VERSION 0x1
168*8d67ca89SAndroid Build Coastguard Worker struct ip_vs_flags {
169*8d67ca89SAndroid Build Coastguard Worker   __u32 flags;
170*8d67ca89SAndroid Build Coastguard Worker   __u32 mask;
171*8d67ca89SAndroid Build Coastguard Worker };
172*8d67ca89SAndroid Build Coastguard Worker enum {
173*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_UNSPEC = 0,
174*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_NEW_SERVICE,
175*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_SET_SERVICE,
176*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_DEL_SERVICE,
177*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_GET_SERVICE,
178*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_NEW_DEST,
179*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_SET_DEST,
180*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_DEL_DEST,
181*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_GET_DEST,
182*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_NEW_DAEMON,
183*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_DEL_DAEMON,
184*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_GET_DAEMON,
185*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_SET_CONFIG,
186*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_GET_CONFIG,
187*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_SET_INFO,
188*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_GET_INFO,
189*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_ZERO,
190*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_FLUSH,
191*8d67ca89SAndroid Build Coastguard Worker   __IPVS_CMD_MAX,
192*8d67ca89SAndroid Build Coastguard Worker };
193*8d67ca89SAndroid Build Coastguard Worker #define IPVS_CMD_MAX (__IPVS_CMD_MAX - 1)
194*8d67ca89SAndroid Build Coastguard Worker enum {
195*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_ATTR_UNSPEC = 0,
196*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_ATTR_SERVICE,
197*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_ATTR_DEST,
198*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_ATTR_DAEMON,
199*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_ATTR_TIMEOUT_TCP,
200*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_ATTR_TIMEOUT_TCP_FIN,
201*8d67ca89SAndroid Build Coastguard Worker   IPVS_CMD_ATTR_TIMEOUT_UDP,
202*8d67ca89SAndroid Build Coastguard Worker   __IPVS_CMD_ATTR_MAX,
203*8d67ca89SAndroid Build Coastguard Worker };
204*8d67ca89SAndroid Build Coastguard Worker #define IPVS_CMD_ATTR_MAX (__IPVS_CMD_ATTR_MAX - 1)
205*8d67ca89SAndroid Build Coastguard Worker enum {
206*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_UNSPEC = 0,
207*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_AF,
208*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_PROTOCOL,
209*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_ADDR,
210*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_PORT,
211*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_FWMARK,
212*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_SCHED_NAME,
213*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_FLAGS,
214*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_TIMEOUT,
215*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_NETMASK,
216*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_STATS,
217*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_PE_NAME,
218*8d67ca89SAndroid Build Coastguard Worker   IPVS_SVC_ATTR_STATS64,
219*8d67ca89SAndroid Build Coastguard Worker   __IPVS_SVC_ATTR_MAX,
220*8d67ca89SAndroid Build Coastguard Worker };
221*8d67ca89SAndroid Build Coastguard Worker #define IPVS_SVC_ATTR_MAX (__IPVS_SVC_ATTR_MAX - 1)
222*8d67ca89SAndroid Build Coastguard Worker enum {
223*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_UNSPEC = 0,
224*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_ADDR,
225*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_PORT,
226*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_FWD_METHOD,
227*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_WEIGHT,
228*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_U_THRESH,
229*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_L_THRESH,
230*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_ACTIVE_CONNS,
231*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_INACT_CONNS,
232*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_PERSIST_CONNS,
233*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_STATS,
234*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_ADDR_FAMILY,
235*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_STATS64,
236*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_TUN_TYPE,
237*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_TUN_PORT,
238*8d67ca89SAndroid Build Coastguard Worker   IPVS_DEST_ATTR_TUN_FLAGS,
239*8d67ca89SAndroid Build Coastguard Worker   __IPVS_DEST_ATTR_MAX,
240*8d67ca89SAndroid Build Coastguard Worker };
241*8d67ca89SAndroid Build Coastguard Worker #define IPVS_DEST_ATTR_MAX (__IPVS_DEST_ATTR_MAX - 1)
242*8d67ca89SAndroid Build Coastguard Worker enum {
243*8d67ca89SAndroid Build Coastguard Worker   IPVS_DAEMON_ATTR_UNSPEC = 0,
244*8d67ca89SAndroid Build Coastguard Worker   IPVS_DAEMON_ATTR_STATE,
245*8d67ca89SAndroid Build Coastguard Worker   IPVS_DAEMON_ATTR_MCAST_IFN,
246*8d67ca89SAndroid Build Coastguard Worker   IPVS_DAEMON_ATTR_SYNC_ID,
247*8d67ca89SAndroid Build Coastguard Worker   IPVS_DAEMON_ATTR_SYNC_MAXLEN,
248*8d67ca89SAndroid Build Coastguard Worker   IPVS_DAEMON_ATTR_MCAST_GROUP,
249*8d67ca89SAndroid Build Coastguard Worker   IPVS_DAEMON_ATTR_MCAST_GROUP6,
250*8d67ca89SAndroid Build Coastguard Worker   IPVS_DAEMON_ATTR_MCAST_PORT,
251*8d67ca89SAndroid Build Coastguard Worker   IPVS_DAEMON_ATTR_MCAST_TTL,
252*8d67ca89SAndroid Build Coastguard Worker   __IPVS_DAEMON_ATTR_MAX,
253*8d67ca89SAndroid Build Coastguard Worker };
254*8d67ca89SAndroid Build Coastguard Worker #define IPVS_DAEMON_ATTR_MAX (__IPVS_DAEMON_ATTR_MAX - 1)
255*8d67ca89SAndroid Build Coastguard Worker enum {
256*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_UNSPEC = 0,
257*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_CONNS,
258*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_INPKTS,
259*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_OUTPKTS,
260*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_INBYTES,
261*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_OUTBYTES,
262*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_CPS,
263*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_INPPS,
264*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_OUTPPS,
265*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_INBPS,
266*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_OUTBPS,
267*8d67ca89SAndroid Build Coastguard Worker   IPVS_STATS_ATTR_PAD,
268*8d67ca89SAndroid Build Coastguard Worker   __IPVS_STATS_ATTR_MAX,
269*8d67ca89SAndroid Build Coastguard Worker };
270*8d67ca89SAndroid Build Coastguard Worker #define IPVS_STATS_ATTR_MAX (__IPVS_STATS_ATTR_MAX - 1)
271*8d67ca89SAndroid Build Coastguard Worker enum {
272*8d67ca89SAndroid Build Coastguard Worker   IPVS_INFO_ATTR_UNSPEC = 0,
273*8d67ca89SAndroid Build Coastguard Worker   IPVS_INFO_ATTR_VERSION,
274*8d67ca89SAndroid Build Coastguard Worker   IPVS_INFO_ATTR_CONN_TAB_SIZE,
275*8d67ca89SAndroid Build Coastguard Worker   __IPVS_INFO_ATTR_MAX,
276*8d67ca89SAndroid Build Coastguard Worker };
277*8d67ca89SAndroid Build Coastguard Worker #define IPVS_INFO_ATTR_MAX (__IPVS_INFO_ATTR_MAX - 1)
278*8d67ca89SAndroid Build Coastguard Worker #endif
279