From: Pekka Riikonen Date: Tue, 10 Sep 2002 19:21:27 +0000 (+0000) Subject: Ignore SERVER_SIGNOFF notify received to your own ID. X-Git-Tag: silc.server.0.9.5~2 X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=commitdiff_plain;h=178b699e768fd14c6263d6e6bae3b252d180adee Ignore SERVER_SIGNOFF notify received to your own ID. --- diff --git a/apps/silcd/packet_receive.c b/apps/silcd/packet_receive.c index 0725f7e8..34627a4f 100644 --- a/apps/silcd/packet_receive.c +++ b/apps/silcd/packet_receive.c @@ -1230,6 +1230,12 @@ void silc_server_notify(SilcServer server, if (!server_id) goto out; + /* If the ID is mine, this notify is not allowed. */ + if (SILC_ID_SERVER_COMPARE(server_id, server->id)) { + SILC_LOG_DEBUG(("Ignoring my own ID for SERVER_SIGNOFF")); + break; + } + /* Get server entry */ server_entry = silc_idlist_find_server_by_id(server->global_list, server_id, TRUE, NULL); @@ -1305,7 +1311,7 @@ void silc_server_notify(SilcServer server, silc_free(server_id); /* Sending SERVER_SIGNOFF is not right way to signoff local connection */ - if (SILC_IS_LOCAL(server_entry) || server_entry == server->id_entry) + if (SILC_IS_LOCAL(server_entry)) break; /* Remove all servers that are originated from this server, and