diff --git a/src/server/ns_turn_server.c b/src/server/ns_turn_server.c index c1af349..fa94532 100644 --- a/src/server/ns_turn_server.c +++ b/src/server/ns_turn_server.c @@ -3646,9 +3646,6 @@ int shutdown_client_connection(turn_turnserver *server, ts_ur_super_session *ss, if (server->disconnect) server->disconnect(ss); - IOA_CLOSE_SOCKET(elem->s); - IOA_CLOSE_SOCKET(ss->alloc.relay_session.s); - if (server->verbose) { char sraddr[129]="\0"; @@ -3660,6 +3657,9 @@ int shutdown_client_connection(turn_turnserver *server, ts_ur_super_session *ss, (unsigned long long)(ss->id), (char*)ss->username,(char*)ss->realm_options.name,(char*)ss->origin, sladdr,sraddr, reason); } + IOA_CLOSE_SOCKET(elem->s); + IOA_CLOSE_SOCKET(ss->alloc.relay_session.s); + turn_server_remove_all_from_ur_map_ss(ss); FUNCEND;