aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJouni Malinen <j@w1.fi>2009-12-19 16:51:10 (GMT)
committerJouni Malinen <j@w1.fi>2010-01-09 18:58:22 (GMT)
commit9c42a3938abd3af54d973914bebb4039a267f477 (patch)
tree5fbd74adf6974500d5aaeb642cb9b0dc1a394c99
parenta3077f77792ec3e14839b06fb8bccacb868727e1 (diff)
downloadhostap-06-9c42a3938abd3af54d973914bebb4039a267f477.zip
hostap-06-9c42a3938abd3af54d973914bebb4039a267f477.tar.gz
hostap-06-9c42a3938abd3af54d973914bebb4039a267f477.tar.bz2
Fix RADIUS server deinit to cancel timeout for session removal
(cherry picked from commit f481459f5e3eb24932057b88fea32b4576cccfc7)
-rw-r--r--src/radius/radius_server.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/radius/radius_server.c b/src/radius/radius_server.c
index 2d1259b..4f399bc 100644
--- a/src/radius/radius_server.c
+++ b/src/radius/radius_server.c
@@ -117,7 +117,8 @@ wpa_hexdump_ascii(MSG_MSGDUMP, "RADIUS SRV: " args)
static void radius_server_session_timeout(void *eloop_ctx, void *timeout_ctx);
-
+static void radius_server_session_remove_timeout(void *eloop_ctx,
+ void *timeout_ctx);
static struct radius_client *
@@ -179,6 +180,7 @@ static void radius_server_session_free(struct radius_server_data *data,
struct radius_session *sess)
{
eloop_cancel_timeout(radius_server_session_timeout, data, sess);
+ eloop_cancel_timeout(radius_server_session_remove_timeout, data, sess);
eap_server_sm_deinit(sess->eap);
if (sess->last_msg) {
radius_msg_free(sess->last_msg);
@@ -194,9 +196,6 @@ static void radius_server_session_free(struct radius_server_data *data,
}
-static void radius_server_session_remove_timeout(void *eloop_ctx,
- void *timeout_ctx);
-
static void radius_server_session_remove(struct radius_server_data *data,
struct radius_session *sess)
{