diff options
Diffstat (limited to 'src/charon/config/peer_cfg.c')
-rw-r--r-- | src/charon/config/peer_cfg.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/charon/config/peer_cfg.c b/src/charon/config/peer_cfg.c index 6733df08c..7935b9703 100644 --- a/src/charon/config/peer_cfg.c +++ b/src/charon/config/peer_cfg.c @@ -141,6 +141,11 @@ struct private_peer_cfg_t { bool use_mobike; /** + * enforce UDP encapsulation + */ + bool force_encap; + + /** * Time before an SA gets invalid */ u_int32_t lifetime; @@ -364,6 +369,14 @@ static bool use_mobike(private_peer_cfg_t *this) { return this->use_mobike; } + +/** + * Implementation of peer_cfg_t.force_encap. + */ +static bool force_encap_meth(private_peer_cfg_t *this) +{ + return this->force_encap; +} /** * Implements peer_cfg_t.get_dpd_delay @@ -452,7 +465,7 @@ peer_cfg_t *peer_cfg_create(char *name, u_int ike_version, ike_cfg_t *ike_cfg, auth_method_t auth_method, eap_type_t eap_type, u_int32_t keyingtries, u_int32_t lifetime, u_int32_t rekeytime, u_int32_t jitter, - bool reauth, bool mobike, + bool reauth, bool mobike, bool force_encap, u_int32_t dpd_delay, dpd_action_t dpd_action, host_t *my_virtual_ip, host_t *other_virtual_ip) { @@ -477,6 +490,7 @@ peer_cfg_t *peer_cfg_create(char *name, u_int ike_version, ike_cfg_t *ike_cfg, this->public.get_lifetime = (u_int32_t (*) (peer_cfg_t *, bool rekey))get_lifetime; this->public.use_reauth = (bool (*) (peer_cfg_t *))use_reauth; this->public.use_mobike = (bool (*) (peer_cfg_t *))use_mobike; + this->public.force_encap = (bool (*) (peer_cfg_t *))force_encap_meth; this->public.get_dpd_delay = (u_int32_t (*) (peer_cfg_t *))get_dpd_delay; this->public.get_dpd_action = (dpd_action_t (*) (peer_cfg_t *))get_dpd_action; this->public.get_my_virtual_ip = (host_t* (*) (peer_cfg_t *))get_my_virtual_ip; @@ -504,6 +518,7 @@ peer_cfg_t *peer_cfg_create(char *name, u_int ike_version, ike_cfg_t *ike_cfg, this->jitter = jitter; this->use_reauth = reauth; this->use_mobike = mobike; + this->force_encap = force_encap; this->dpd_delay = dpd_delay; this->dpd_action = dpd_action; this->my_virtual_ip = my_virtual_ip; |