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 _LINUX_XFRM_H
20#define _LINUX_XFRM_H
21#include <linux/types.h>
22typedef union {
23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24 __be32 a4;
25 __be32 a6[4];
26} xfrm_address_t;
27struct xfrm_id {
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29 xfrm_address_t daddr;
30 __be32 spi;
31 __u8 proto;
32};
33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34struct xfrm_sec_ctx {
35 __u8 ctx_doi;
36 __u8 ctx_alg;
37 __u16 ctx_len;
38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39 __u32 ctx_sid;
40 char ctx_str[0];
41};
42#define XFRM_SC_DOI_RESERVED 0
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44#define XFRM_SC_DOI_LSM 1
45#define XFRM_SC_ALG_RESERVED 0
46#define XFRM_SC_ALG_SELINUX 1
47struct xfrm_selector {
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 xfrm_address_t daddr;
50 xfrm_address_t saddr;
51 __be16 dport;
52 __be16 dport_mask;
53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54 __be16 sport;
55 __be16 sport_mask;
56 __u16 family;
57 __u8 prefixlen_d;
58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59 __u8 prefixlen_s;
60 __u8 proto;
61 int ifindex;
62 __kernel_uid32_t user;
63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64};
65#define XFRM_INF (~(__u64)0)
66struct xfrm_lifetime_cfg {
67 __u64 soft_byte_limit;
68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69 __u64 hard_byte_limit;
70 __u64 soft_packet_limit;
71 __u64 hard_packet_limit;
72 __u64 soft_add_expires_seconds;
73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74 __u64 hard_add_expires_seconds;
75 __u64 soft_use_expires_seconds;
76 __u64 hard_use_expires_seconds;
77};
78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79struct xfrm_lifetime_cur {
80 __u64 bytes;
81 __u64 packets;
82 __u64 add_time;
83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84 __u64 use_time;
85};
86struct xfrm_replay_state {
87 __u32 oseq;
88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89 __u32 seq;
90 __u32 bitmap;
91};
92#define XFRMA_REPLAY_ESN_MAX 4096
93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94struct xfrm_replay_state_esn {
95 unsigned int bmp_len;
96 __u32 oseq;
97 __u32 seq;
98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99 __u32 oseq_hi;
100 __u32 seq_hi;
101 __u32 replay_window;
102 __u32 bmp[0];
103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104};
105struct xfrm_algo {
106 char alg_name[64];
107 unsigned int alg_key_len;
108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109 char alg_key[0];
110};
111struct xfrm_algo_auth {
112 char alg_name[64];
113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114 unsigned int alg_key_len;
115 unsigned int alg_trunc_len;
116 char alg_key[0];
117};
118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119struct xfrm_algo_aead {
120 char alg_name[64];
121 unsigned int alg_key_len;
122 unsigned int alg_icv_len;
123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124 char alg_key[0];
125};
126struct xfrm_stats {
127 __u32 replay_window;
128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129 __u32 replay;
130 __u32 integrity_failed;
131};
132enum {
133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134 XFRM_POLICY_TYPE_MAIN = 0,
135 XFRM_POLICY_TYPE_SUB = 1,
136 XFRM_POLICY_TYPE_MAX = 2,
137 XFRM_POLICY_TYPE_ANY = 255
138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139};
140enum {
141 XFRM_POLICY_IN = 0,
142 XFRM_POLICY_OUT = 1,
143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144 XFRM_POLICY_FWD = 2,
145 XFRM_POLICY_MASK = 3,
146 XFRM_POLICY_MAX = 3
147};
148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149enum {
150 XFRM_SHARE_ANY,
151 XFRM_SHARE_SESSION,
152 XFRM_SHARE_USER,
153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154 XFRM_SHARE_UNIQUE
155};
156#define XFRM_MODE_TRANSPORT 0
157#define XFRM_MODE_TUNNEL 1
158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159#define XFRM_MODE_ROUTEOPTIMIZATION 2
160#define XFRM_MODE_IN_TRIGGER 3
161#define XFRM_MODE_BEET 4
162#define XFRM_MODE_MAX 5
163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164enum {
165 XFRM_MSG_BASE = 0x10,
166 XFRM_MSG_NEWSA = 0x10,
167#define XFRM_MSG_NEWSA XFRM_MSG_NEWSA
168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169 XFRM_MSG_DELSA,
170#define XFRM_MSG_DELSA XFRM_MSG_DELSA
171 XFRM_MSG_GETSA,
172#define XFRM_MSG_GETSA XFRM_MSG_GETSA
173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174 XFRM_MSG_NEWPOLICY,
175#define XFRM_MSG_NEWPOLICY XFRM_MSG_NEWPOLICY
176 XFRM_MSG_DELPOLICY,
177#define XFRM_MSG_DELPOLICY XFRM_MSG_DELPOLICY
178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179 XFRM_MSG_GETPOLICY,
180#define XFRM_MSG_GETPOLICY XFRM_MSG_GETPOLICY
181 XFRM_MSG_ALLOCSPI,
182#define XFRM_MSG_ALLOCSPI XFRM_MSG_ALLOCSPI
183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184 XFRM_MSG_ACQUIRE,
185#define XFRM_MSG_ACQUIRE XFRM_MSG_ACQUIRE
186 XFRM_MSG_EXPIRE,
187#define XFRM_MSG_EXPIRE XFRM_MSG_EXPIRE
188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189 XFRM_MSG_UPDPOLICY,
190#define XFRM_MSG_UPDPOLICY XFRM_MSG_UPDPOLICY
191 XFRM_MSG_UPDSA,
192#define XFRM_MSG_UPDSA XFRM_MSG_UPDSA
193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194 XFRM_MSG_POLEXPIRE,
195#define XFRM_MSG_POLEXPIRE XFRM_MSG_POLEXPIRE
196 XFRM_MSG_FLUSHSA,
197#define XFRM_MSG_FLUSHSA XFRM_MSG_FLUSHSA
198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199 XFRM_MSG_FLUSHPOLICY,
200#define XFRM_MSG_FLUSHPOLICY XFRM_MSG_FLUSHPOLICY
201 XFRM_MSG_NEWAE,
202#define XFRM_MSG_NEWAE XFRM_MSG_NEWAE
203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204 XFRM_MSG_GETAE,
205#define XFRM_MSG_GETAE XFRM_MSG_GETAE
206 XFRM_MSG_REPORT,
207#define XFRM_MSG_REPORT XFRM_MSG_REPORT
208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209 XFRM_MSG_MIGRATE,
210#define XFRM_MSG_MIGRATE XFRM_MSG_MIGRATE
211 XFRM_MSG_NEWSADINFO,
212#define XFRM_MSG_NEWSADINFO XFRM_MSG_NEWSADINFO
213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
214 XFRM_MSG_GETSADINFO,
215#define XFRM_MSG_GETSADINFO XFRM_MSG_GETSADINFO
216 XFRM_MSG_NEWSPDINFO,
217#define XFRM_MSG_NEWSPDINFO XFRM_MSG_NEWSPDINFO
218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
219 XFRM_MSG_GETSPDINFO,
220#define XFRM_MSG_GETSPDINFO XFRM_MSG_GETSPDINFO
221 XFRM_MSG_MAPPING,
222#define XFRM_MSG_MAPPING XFRM_MSG_MAPPING
223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224 __XFRM_MSG_MAX
225};
226#define XFRM_MSG_MAX (__XFRM_MSG_MAX - 1)
227#define XFRM_NR_MSGTYPES (XFRM_MSG_MAX + 1 - XFRM_MSG_BASE)
228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229struct xfrm_user_sec_ctx {
230 __u16 len;
231 __u16 exttype;
232 __u8 ctx_alg;
233/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234 __u8 ctx_doi;
235 __u16 ctx_len;
236};
237struct xfrm_user_tmpl {
238/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
239 struct xfrm_id id;
240 __u16 family;
241 xfrm_address_t saddr;
242 __u32 reqid;
243/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
244 __u8 mode;
245 __u8 share;
246 __u8 optional;
247 __u32 aalgos;
248/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249 __u32 ealgos;
250 __u32 calgos;
251};
252struct xfrm_encap_tmpl {
253/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254 __u16 encap_type;
255 __be16 encap_sport;
256 __be16 encap_dport;
257 xfrm_address_t encap_oa;
258/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
259};
260enum xfrm_ae_ftype_t {
261 XFRM_AE_UNSPEC,
262 XFRM_AE_RTHR=1,
263/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
264 XFRM_AE_RVAL=2,
265 XFRM_AE_LVAL=4,
266 XFRM_AE_ETHR=8,
267 XFRM_AE_CR=16,
268/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
269 XFRM_AE_CE=32,
270 XFRM_AE_CU=64,
271 __XFRM_AE_MAX
272#define XFRM_AE_MAX (__XFRM_AE_MAX - 1)
273/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
274};
275struct xfrm_userpolicy_type {
276 __u8 type;
277 __u16 reserved1;
278/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
279 __u8 reserved2;
280};
281enum xfrm_attr_type_t {
282 XFRMA_UNSPEC,
283/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
284 XFRMA_ALG_AUTH,
285 XFRMA_ALG_CRYPT,
286 XFRMA_ALG_COMP,
287 XFRMA_ENCAP,
288/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
289 XFRMA_TMPL,
290 XFRMA_SA,
291 XFRMA_POLICY,
292 XFRMA_SEC_CTX,
293/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
294 XFRMA_LTIME_VAL,
295 XFRMA_REPLAY_VAL,
296 XFRMA_REPLAY_THRESH,
297 XFRMA_ETIMER_THRESH,
298/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
299 XFRMA_SRCADDR,
300 XFRMA_COADDR,
301 XFRMA_LASTUSED,
302 XFRMA_POLICY_TYPE,
303/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
304 XFRMA_MIGRATE,
305 XFRMA_ALG_AEAD,
306 XFRMA_KMADDRESS,
307 XFRMA_ALG_AUTH_TRUNC,
308/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
309 XFRMA_MARK,
310 XFRMA_TFCPAD,
311 XFRMA_REPLAY_ESN_VAL,
312 XFRMA_SA_EXTRA_FLAGS,
313/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
314 __XFRMA_MAX
315#define XFRMA_MAX (__XFRMA_MAX - 1)
316};
317struct xfrm_mark {
318/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
319 __u32 v;
320 __u32 m;
321};
322enum xfrm_sadattr_type_t {
323/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
324 XFRMA_SAD_UNSPEC,
325 XFRMA_SAD_CNT,
326 XFRMA_SAD_HINFO,
327 __XFRMA_SAD_MAX
328/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
329#define XFRMA_SAD_MAX (__XFRMA_SAD_MAX - 1)
330};
331struct xfrmu_sadhinfo {
332 __u32 sadhcnt;
333/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
334 __u32 sadhmcnt;
335};
336enum xfrm_spdattr_type_t {
337 XFRMA_SPD_UNSPEC,
338/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
339 XFRMA_SPD_INFO,
340 XFRMA_SPD_HINFO,
341 __XFRMA_SPD_MAX
342#define XFRMA_SPD_MAX (__XFRMA_SPD_MAX - 1)
343/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
344};
345struct xfrmu_spdinfo {
346 __u32 incnt;
347 __u32 outcnt;
348/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
349 __u32 fwdcnt;
350 __u32 inscnt;
351 __u32 outscnt;
352 __u32 fwdscnt;
353/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
354};
355struct xfrmu_spdhinfo {
356 __u32 spdhcnt;
357 __u32 spdhmcnt;
358/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
359};
360struct xfrm_usersa_info {
361 struct xfrm_selector sel;
362 struct xfrm_id id;
363/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
364 xfrm_address_t saddr;
365 struct xfrm_lifetime_cfg lft;
366 struct xfrm_lifetime_cur curlft;
367 struct xfrm_stats stats;
368/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
369 __u32 seq;
370 __u32 reqid;
371 __u16 family;
372 __u8 mode;
373/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
374 __u8 replay_window;
375 __u8 flags;
376#define XFRM_STATE_NOECN 1
377#define XFRM_STATE_DECAP_DSCP 2
378/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
379#define XFRM_STATE_NOPMTUDISC 4
380#define XFRM_STATE_WILDRECV 8
381#define XFRM_STATE_ICMP 16
382#define XFRM_STATE_AF_UNSPEC 32
383/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
384#define XFRM_STATE_ALIGN4 64
385#define XFRM_STATE_ESN 128
386};
387#define XFRM_SA_XFLAG_DONT_ENCAP_DSCP 1
388/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
389struct xfrm_usersa_id {
390 xfrm_address_t daddr;
391 __be32 spi;
392 __u16 family;
393/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
394 __u8 proto;
395};
396struct xfrm_aevent_id {
397 struct xfrm_usersa_id sa_id;
398/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
399 xfrm_address_t saddr;
400 __u32 flags;
401 __u32 reqid;
402};
403/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
404struct xfrm_userspi_info {
405 struct xfrm_usersa_info info;
406 __u32 min;
407 __u32 max;
408/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
409};
410struct xfrm_userpolicy_info {
411 struct xfrm_selector sel;
412 struct xfrm_lifetime_cfg lft;
413/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
414 struct xfrm_lifetime_cur curlft;
415 __u32 priority;
416 __u32 index;
417 __u8 dir;
418/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
419 __u8 action;
420#define XFRM_POLICY_ALLOW 0
421#define XFRM_POLICY_BLOCK 1
422 __u8 flags;
423/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
424#define XFRM_POLICY_LOCALOK 1
425#define XFRM_POLICY_ICMP 2
426 __u8 share;
427};
428/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
429struct xfrm_userpolicy_id {
430 struct xfrm_selector sel;
431 __u32 index;
432 __u8 dir;
433/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
434};
435struct xfrm_user_acquire {
436 struct xfrm_id id;
437 xfrm_address_t saddr;
438/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
439 struct xfrm_selector sel;
440 struct xfrm_userpolicy_info policy;
441 __u32 aalgos;
442 __u32 ealgos;
443/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
444 __u32 calgos;
445 __u32 seq;
446};
447struct xfrm_user_expire {
448/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
449 struct xfrm_usersa_info state;
450 __u8 hard;
451};
452struct xfrm_user_polexpire {
453/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
454 struct xfrm_userpolicy_info pol;
455 __u8 hard;
456};
457struct xfrm_usersa_flush {
458/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
459 __u8 proto;
460};
461struct xfrm_user_report {
462 __u8 proto;
463/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
464 struct xfrm_selector sel;
465};
466struct xfrm_user_kmaddress {
467 xfrm_address_t local;
468/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
469 xfrm_address_t remote;
470 __u32 reserved;
471 __u16 family;
472};
473/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
474struct xfrm_user_migrate {
475 xfrm_address_t old_daddr;
476 xfrm_address_t old_saddr;
477 xfrm_address_t new_daddr;
478/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
479 xfrm_address_t new_saddr;
480 __u8 proto;
481 __u8 mode;
482 __u16 reserved;
483/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
484 __u32 reqid;
485 __u16 old_family;
486 __u16 new_family;
487};
488/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
489struct xfrm_user_mapping {
490 struct xfrm_usersa_id id;
491 __u32 reqid;
492 xfrm_address_t old_saddr;
493/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
494 xfrm_address_t new_saddr;
495 __be16 old_sport;
496 __be16 new_sport;
497};
498/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
499#define XFRMGRP_ACQUIRE 1
500#define XFRMGRP_EXPIRE 2
501#define XFRMGRP_SA 4
502#define XFRMGRP_POLICY 8
503/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
504#define XFRMGRP_REPORT 0x20
505enum xfrm_nlgroups {
506 XFRMNLGRP_NONE,
507#define XFRMNLGRP_NONE XFRMNLGRP_NONE
508/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
509 XFRMNLGRP_ACQUIRE,
510#define XFRMNLGRP_ACQUIRE XFRMNLGRP_ACQUIRE
511 XFRMNLGRP_EXPIRE,
512#define XFRMNLGRP_EXPIRE XFRMNLGRP_EXPIRE
513/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
514 XFRMNLGRP_SA,
515#define XFRMNLGRP_SA XFRMNLGRP_SA
516 XFRMNLGRP_POLICY,
517#define XFRMNLGRP_POLICY XFRMNLGRP_POLICY
518/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
519 XFRMNLGRP_AEVENTS,
520#define XFRMNLGRP_AEVENTS XFRMNLGRP_AEVENTS
521 XFRMNLGRP_REPORT,
522#define XFRMNLGRP_REPORT XFRMNLGRP_REPORT
523/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
524 XFRMNLGRP_MIGRATE,
525#define XFRMNLGRP_MIGRATE XFRMNLGRP_MIGRATE
526 XFRMNLGRP_MAPPING,
527#define XFRMNLGRP_MAPPING XFRMNLGRP_MAPPING
528/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
529 __XFRMNLGRP_MAX
530};
531#define XFRMNLGRP_MAX (__XFRMNLGRP_MAX - 1)
532#endif
533/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
534