udpates.
authorPekka Riikonen <priikone@silcnet.org>
Sat, 9 Jun 2001 09:53:43 +0000 (09:53 +0000)
committerPekka Riikonen <priikone@silcnet.org>
Sat, 9 Jun 2001 09:53:43 +0000 (09:53 +0000)
CHANGES
apps/silcd/command.c
apps/silcd/packet_receive.c

diff --git a/CHANGES b/CHANGES
index 2d784a575ffb2f58367e98ded81a4340cd07cf95..8b3e0adf6a8a66d9595b0cde476f67a359723dac 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,8 @@
+Sat Jun  9 12:51:27 EEST 2001  Pekka Riikonen <priikone@poseidon.pspt.fi>
+
+       * silc_server_whois_send_reply crashed the server if the nickname
+         was 127 characters long.  Affected file silcd/command.c.
+
 Thu Jun  7 16:29:56 EEST 2001  Pekka Riikonen <priikone@poseidon.pspt.fi>
 
        * Added sanity check to the silc_server_new_client. If the hostname
index 8e835507c2ab0efc65c58a0b384ebf70e4729d75..bca269c1f953f7d0599ab708a17a01a8727910c4 100644 (file)
@@ -537,7 +537,7 @@ silc_server_command_whois_send_reply(SilcServerCommandContext cmd,
   SilcClientEntry entry;
   SilcCommandStatus status;
   uint16 ident = silc_command_get_ident(cmd->payload);
-  char nh[128], uh[128];
+  char nh[256], uh[256];
   unsigned char idle[4], mode[4];
   SilcSocketConnection hsock;
 
index 1600f0b52c6112c71221715f20aa83f0f450edde..b69b083ef57ffe044aa56deb7e9152b0226a395b 100644 (file)
@@ -1323,6 +1323,9 @@ SilcClientEntry silc_server_new_client(SilcServer server,
     return NULL;
   }
 
+  if (strlen(username) > 128)
+    username[127] = '\0';
+
   nickname = strdup(username);
 
   /* Make sanity checks for the hostname of the client. If the hostname
@@ -1407,9 +1410,6 @@ SilcClientEntry silc_server_new_client(SilcServer server,
   silc_id_create_client_id(server->id, server->rng, server->md5hash,
                           username, &client_id);
 
-  if (strlen(username) > 128)
-    username[127] = '\0';
-
   /* Update client entry */
   idata->registered = TRUE;
   client->nickname = nickname;