diff options
author | Martin Willi <martin@strongswan.org> | 2008-10-07 07:55:28 +0000 |
---|---|---|
committer | Martin Willi <martin@strongswan.org> | 2008-10-07 07:55:28 +0000 |
commit | aa9a300677468fd7926012e6a8c5f3ff1b48b710 (patch) | |
tree | 51fc00887e17e994c35c7ef8a0df36be281cdbef /src/include | |
parent | 41b1cd6b872d9c2a938293a1945cca53459ded27 (diff) | |
download | strongswan-aa9a300677468fd7926012e6a8c5f3ff1b48b710.tar.bz2 strongswan-aa9a300677468fd7926012e6a8c5f3ff1b48b710.tar.xz |
userland support to process notifies for new NAT mappings detected in UDP encapsulation
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/linux/xfrm.h | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/src/include/linux/xfrm.h b/src/include/linux/xfrm.h index d4e9e50a8..759885cb6 100644 --- a/src/include/linux/xfrm.h +++ b/src/include/linux/xfrm.h @@ -97,10 +97,10 @@ struct xfrm_algo { }; struct xfrm_algo_aead { - char alg_name[64]; - int alg_key_len; /* in bits */ - int alg_icv_len; /* in bits */ - char alg_key[0]; + char alg_name[64]; + unsigned int alg_key_len; /* in bits */ + unsigned int alg_icv_len; /* in bits */ + char alg_key[0]; }; struct xfrm_stats { @@ -113,7 +113,8 @@ enum { XFRM_POLICY_TYPE_MAIN = 0, XFRM_POLICY_TYPE_SUB = 1, - XFRM_POLICY_TYPE_MAX = 2 + XFRM_POLICY_TYPE_MAX = 2, + XFRM_POLICY_TYPE_ANY = 255 }; enum @@ -198,6 +199,9 @@ enum { #define XFRM_MSG_NEWSPDINFO XFRM_MSG_NEWSPDINFO XFRM_MSG_GETSPDINFO, #define XFRM_MSG_GETSPDINFO XFRM_MSG_GETSPDINFO + + XFRM_MSG_MAPPING, +#define XFRM_MSG_MAPPING XFRM_MSG_MAPPING __XFRM_MSG_MAX }; #define XFRM_MSG_MAX (__XFRM_MSG_MAX - 1) @@ -427,6 +431,15 @@ struct xfrm_user_migrate { __u16 new_family; }; +struct xfrm_user_mapping { + struct xfrm_usersa_id id; + __u32 reqid; + xfrm_address_t old_saddr; + xfrm_address_t new_saddr; + __be16 old_sport; + __be16 new_sport; +}; + #ifndef __KERNEL__ /* backwards compatibility for userspace */ #define XFRMGRP_ACQUIRE 1 @@ -453,6 +466,8 @@ enum xfrm_nlgroups { #define XFRMNLGRP_REPORT XFRMNLGRP_REPORT XFRMNLGRP_MIGRATE, #define XFRMNLGRP_MIGRATE XFRMNLGRP_MIGRATE + XFRMNLGRP_MAPPING, +#define XFRMNLGRP_MAPPING XFRMNLGRP_MAPPING __XFRMNLGRP_MAX }; #define XFRMNLGRP_MAX (__XFRMNLGRP_MAX - 1) |