Handle channel messages from unknown sender.
authorPekka Riikonen <priikone@silcnet.org>
Fri, 15 Dec 2006 15:25:13 +0000 (15:25 +0000)
committerPekka Riikonen <priikone@silcnet.org>
Fri, 15 Dec 2006 15:25:13 +0000 (15:25 +0000)
apps/irssi/src/silc/core/client_ops.c
apps/irssi/src/silc/core/silc-nicklist.c

index 09654ccebe68bbd84c672c4b8c363af1334ea474..bf0a1881ea53fdb29fdee4e1ad1055143624c218 100644 (file)
@@ -421,6 +421,8 @@ void silc_channel_message(SilcClient client, SilcClientConnection conn,
     SilcChannelUser chu = silc_client_on_channel(channel, sender);
     if (chu)
       nick = silc_nicklist_insert(chanrec, chu, FALSE);
+    if (!nick)
+      return;
   }
 
   /* If the messages is digitally signed, verify it, if possible. */
index 6d4b65f876ca3b7ec2086dfb2e81a0073d3467fa..593c89fd56d7c51abf1b8d2c839d8ab0831715b7 100644 (file)
@@ -1,7 +1,7 @@
 /*
  silc-nicklist.c : irssi
 
-    Copyright (C) 2000, 2003 Timo Sirainen, Pekka Riikonen
+    Copyright (C) 2000, 2003, 2006 Timo Sirainen, Pekka Riikonen
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -36,7 +36,7 @@ SILC_NICK_REC *silc_nicklist_insert(SILC_CHANNEL_REC *channel,
     return NULL;
   if (!user->client)
     return NULL;
-  if (!user->client->nickname)
+  if (!user->client->nickname[0])
     return NULL;
 
   rec = g_new0(SILC_NICK_REC, 1);
@@ -60,7 +60,7 @@ SILC_NICK_REC *silc_nicklist_insert(SILC_CHANNEL_REC *channel,
 SILC_NICK_REC *silc_nicklist_find(SILC_CHANNEL_REC *channel,
                                  SilcClientEntry client)
 {
-  if (!client || !client->nickname)
+  if (!client || !client->nickname[0])
     return NULL;
 
   return (SILC_NICK_REC *)nicklist_find_unique(CHANNEL(channel),