From: Tobias Brunner Date: Mon, 2 Oct 2023 14:10:40 +0000 (+0200) Subject: quick-delete: Correctly maintain allocated reqid when recreating CHILD_SA X-Git-Tag: 5.9.12rc1~10^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f9a9188a36e1b13a3c79cf9dc314cdbebad6625c;p=thirdparty%2Fstrongswan.git quick-delete: Correctly maintain allocated reqid when recreating CHILD_SA --- diff --git a/src/libcharon/sa/ikev1/tasks/quick_delete.c b/src/libcharon/sa/ikev1/tasks/quick_delete.c index bff7a1d7ce..0da50ed405 100644 --- a/src/libcharon/sa/ikev1/tasks/quick_delete.c +++ b/src/libcharon/sa/ikev1/tasks/quick_delete.c @@ -151,7 +151,7 @@ static status_t delete_child(private_quick_delete_t *this, if (remote_close) { child_init_args_t args = { - .reqid = child_sa->get_reqid(child_sa), + .reqid = child_sa->get_reqid_ref(child_sa), }; action_t action; @@ -169,6 +169,10 @@ static status_t delete_child(private_quick_delete_t *this, child_cfg->get_ref(child_cfg); status = this->ike_sa->initiate(this->ike_sa, child_cfg, &args); } + if (args.reqid) + { + charon->kernel->release_reqid(charon->kernel, args.reqid); + } child_cfg->destroy(child_cfg); } }