From: Patrik Weiskircher Date: Tue, 16 Dec 2003 20:40:47 +0000 (+0000) Subject: Remove public key prior deleting client-data on killing a client. X-Git-Tag: silc.server.0.9.16~17 X-Git-Url: http://git.silcnet.org/gitweb/?a=commitdiff_plain;h=6c62815955505d1b044e3b5288e96ede3b5a168d;p=silc.git Remove public key prior deleting client-data on killing a client. --- diff --git a/apps/silcd/server_util.c b/apps/silcd/server_util.c index c6233c7e..4e3d0a07 100644 --- a/apps/silcd/server_util.c +++ b/apps/silcd/server_util.c @@ -1642,17 +1642,17 @@ void silc_server_kill_client(SilcServer server, SILC_OPER_STATS_UPDATE(remote_client, server, SILC_UMODE_SERVER_OPERATOR); SILC_OPER_STATS_UPDATE(remote_client, router, SILC_UMODE_ROUTER_OPERATOR); + if (remote_client->data.public_key) + silc_hash_table_del_by_context(server->pk_hash, + remote_client->data.public_key, + remote_client); + if (SILC_IS_LOCAL(remote_client)) { server->stat.my_clients--; silc_schedule_task_del_by_context(server->schedule, remote_client); silc_idlist_del_data(remote_client); } - if (remote_client->data.public_key) - silc_hash_table_del_by_context(server->pk_hash, - remote_client->data.public_key, - remote_client); - /* Remove remote client */ silc_idlist_del_data(remote_client); if (!silc_idlist_del_client(server->global_list, remote_client)) {