diff options
author | Andreas Steffen <andreas.steffen@strongswan.org> | 2008-01-29 01:41:47 +0000 |
---|---|---|
committer | Andreas Steffen <andreas.steffen@strongswan.org> | 2008-01-29 01:41:47 +0000 |
commit | b0e40caafbd7c5e85c9f2cd476c4e4a050dea091 (patch) | |
tree | cfce13bcada45bbe7e38c578b66e96c83171fced /src | |
parent | 5862981ce9d6e8fca19b7d60ba4fc1452ceafa83 (diff) | |
download | strongswan-b0e40caafbd7c5e85c9f2cd476c4e4a050dea091.tar.bz2 strongswan-b0e40caafbd7c5e85c9f2cd476c4e4a050dea091.tar.xz |
NAT-T conditions were not inherited during IKE_SA rekeying
Diffstat (limited to 'src')
-rw-r--r-- | src/charon/sa/ike_sa.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/charon/sa/ike_sa.c b/src/charon/sa/ike_sa.c index 9cada2cb5..93aa08965 100644 --- a/src/charon/sa/ike_sa.c +++ b/src/charon/sa/ike_sa.c @@ -2090,7 +2090,14 @@ static status_t inherit(private_ike_sa_t *this, private_ike_sa_t *other) { this->dns_servers->insert_first(this->dns_servers, ip); } - + + /* inherit NAT-T conditions */ + this->conditions = other->conditions; + if (this->conditions & COND_NAT_HERE) + { + send_keepalive(this); + } + /* adopt all children */ while (other->child_sas->remove_last(other->child_sas, (void**)&child_sa) == SUCCESS) |