• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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>
22 typedef union {
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24  __be32 a4;
25  __be32 a6[4];
26 } xfrm_address_t;
27 struct 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 */
34 struct 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
47 struct 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)
66 struct 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 */
79 struct 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 };
86 struct 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 */
94 struct 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 };
105 struct 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 };
111 struct 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 */
119 struct 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 };
126 struct 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 };
132 enum {
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 };
140 enum {
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 */
149 enum {
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 */
164 enum {
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 */
229 struct 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 };
237 struct 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 };
252 struct 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 };
260 enum 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 };
275 struct 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 };
281 enum 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 };
317 struct xfrm_mark {
318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
319  __u32 v;
320  __u32 m;
321 };
322 enum 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 };
331 struct xfrmu_sadhinfo {
332  __u32 sadhcnt;
333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
334  __u32 sadhmcnt;
335 };
336 enum 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 };
345 struct 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 };
355 struct xfrmu_spdhinfo {
356  __u32 spdhcnt;
357  __u32 spdhmcnt;
358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
359 };
360 struct 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 */
389 struct 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 };
396 struct 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 */
404 struct 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 };
410 struct 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 */
429 struct 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 };
435 struct 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 };
447 struct 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 };
452 struct 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 };
457 struct xfrm_usersa_flush {
458 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
459  __u8 proto;
460 };
461 struct xfrm_user_report {
462  __u8 proto;
463 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
464  struct xfrm_selector sel;
465 };
466 struct 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 */
474 struct 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 */
489 struct 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
505 enum 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