From: Tobias Brunner Date: Wed, 5 Mar 2014 14:17:25 +0000 (+0100) Subject: eap-radius: Add option to not close IKE_SAs on timeouts during interim accouting... X-Git-Tag: 5.1.3rc1~20 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=00b91c4325390b30b0f2c79761d1f022ccdf656b;p=thirdparty%2Fstrongswan.git eap-radius: Add option to not close IKE_SAs on timeouts during interim accouting updates Fixes #528. --- diff --git a/conf/plugins/eap-radius.opt b/conf/plugins/eap-radius.opt index 0edd3458c5..0df6a0d6ff 100644 --- a/conf/plugins/eap-radius.opt +++ b/conf/plugins/eap-radius.opt @@ -1,6 +1,10 @@ charon.plugins.eap-radius.accounting = no Send RADIUS accounting information to RADIUS servers. +charon.plugins.eap-radius.accounting_close_on_timeout = yes + Close the IKE_SA if there is a timeout during interim RADIUS accounting + updates. + charon.plugins.eap-radius.accounting_requires_vip = no If enabled, accounting is disabled unless an IKE_SA has at least one virtual IP. diff --git a/src/libcharon/plugins/eap_radius/eap_radius_accounting.c b/src/libcharon/plugins/eap_radius/eap_radius_accounting.c index 8c780e78d7..5fb1bbb759 100644 --- a/src/libcharon/plugins/eap_radius/eap_radius_accounting.c +++ b/src/libcharon/plugins/eap_radius/eap_radius_accounting.c @@ -410,7 +410,12 @@ static job_requeue_t send_interim(interim_data_t *data) { if (!send_message(this, message)) { - eap_radius_handle_timeout(data->id); + if (lib->settings->get_bool(lib->settings, + "%s.plugins.eap-radius.accounting_close_on_timeout", + TRUE, lib->ns)) + { + eap_radius_handle_timeout(data->id); + } } message->destroy(message); }