IKE_SA rekeying inherits other_host from old IKE_SA

This commit is contained in:
Andreas Steffen
2008-07-23 07:44:26 +00:00
parent 0eede4a31f
commit 6410231335
+3
View File
@@ -69,6 +69,7 @@ struct private_ike_rekey_t {
static status_t build_i(private_ike_rekey_t *this, message_t *message) static status_t build_i(private_ike_rekey_t *this, message_t *message)
{ {
peer_cfg_t *peer_cfg; peer_cfg_t *peer_cfg;
host_t *other_host;
/* create new SA only on first try */ /* create new SA only on first try */
if (this->new_sa == NULL) if (this->new_sa == NULL)
@@ -77,7 +78,9 @@ static status_t build_i(private_ike_rekey_t *this, message_t *message)
TRUE); TRUE);
peer_cfg = this->ike_sa->get_peer_cfg(this->ike_sa); peer_cfg = this->ike_sa->get_peer_cfg(this->ike_sa);
other_host = this->ike_sa->get_other_host(this->ike_sa);
this->new_sa->set_peer_cfg(this->new_sa, peer_cfg); this->new_sa->set_peer_cfg(this->new_sa, peer_cfg);
this->new_sa->set_other_host(this->new_sa, other_host->clone(other_host));
this->ike_init = ike_init_create(this->new_sa, TRUE, this->ike_sa); this->ike_init = ike_init_create(this->new_sa, TRUE, this->ike_sa);
this->ike_sa->set_state(this->ike_sa, IKE_REKEYING); this->ike_sa->set_state(this->ike_sa, IKE_REKEYING);
} }