radius: properly close accounting for certificate sessions

This commit is contained in:
Nikos Mavrogiannopoulos
2015-05-04 10:25:37 +02:00
parent 038db8fd80
commit 2929e1c2e8

View File

@@ -802,12 +802,12 @@ int handle_sec_auth_init(int cfd, sec_mod_st * sec, const SecAuthInitMsg * req)
void sec_auth_user_deinit(sec_mod_st *sec, client_entry_st *e)
{
if (e->auth_ctx != NULL) {
seclog(sec, LOG_DEBUG, "permamently closing session of user '%s' "SESSION_STR, e->auth_info.username, e->auth_info.psid);
if (sec->perm_config->acct.amod != NULL && sec->perm_config->acct.amod->close_session != NULL && e->session_is_open != 0) {
sec->perm_config->acct.amod->close_session(e->auth_type, e->auth_ctx, &e->auth_info, &e->saved_stats, e->discon_reason);
}
seclog(sec, LOG_DEBUG, "permamently closing session of user '%s' "SESSION_STR, e->auth_info.username, e->auth_info.psid);
if (sec->perm_config->acct.amod != NULL && sec->perm_config->acct.amod->close_session != NULL && e->session_is_open != 0) {
sec->perm_config->acct.amod->close_session(e->auth_type, e->auth_ctx, &e->auth_info, &e->saved_stats, e->discon_reason);
}
if (e->auth_ctx != NULL) {
if (e->module)
e->module->auth_deinit(e->auth_ctx);
e->auth_ctx = NULL;