From: Martin Willi Date: Mon, 23 Nov 2009 12:50:01 +0000 (+0100) Subject: Do not recreate existing create_child subtask when retrying with different DH group X-Git-Tag: 4.3.6~186 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=06f02f993c6b0ac20ab648e75cc4ce965672da8a;p=thirdparty%2Fstrongswan.git Do not recreate existing create_child subtask when retrying with different DH group --- diff --git a/src/charon/sa/tasks/child_rekey.c b/src/charon/sa/tasks/child_rekey.c index c3c9429c85..b5e4e84b4e 100644 --- a/src/charon/sa/tasks/child_rekey.c +++ b/src/charon/sa/tasks/child_rekey.c @@ -152,9 +152,12 @@ static status_t build_i(private_child_rekey_t *this, message_t *message) message->add_payload(message, (payload_t*)notify); /* ... our CHILD_CREATE task does the hard work for us. */ + if (!this->child_create) + { + this->child_create = child_create_create(this->ike_sa, config, TRUE, + NULL, NULL); + } reqid = this->child_sa->get_reqid(this->child_sa); - this->child_create = child_create_create(this->ike_sa, config, TRUE, - NULL, NULL); this->child_create->use_reqid(this->child_create, reqid); this->child_create->task.build(&this->child_create->task, message);