updates.
[silc.git] / apps / silcd / packet_receive.c
index 0956be2dad1444fa88339f903582ffdc6e3bf2ee..65aba7318907e6c024dc0769da3c76a1570b54b2 100644 (file)
@@ -228,6 +228,7 @@ void silc_server_notify(SilcServer server,
     silc_hash_table_add(channel->user_list, client, chl);
     silc_hash_table_add(client->channels, channel, chl);
     silc_free(client_id);
+    channel->user_count++;
 
     break;
 
@@ -1588,8 +1589,7 @@ SilcClientEntry silc_server_new_client(SilcServer server,
     int tlen = strcspn(username, "@");
     char *phostname = NULL;
 
-    hostname = silc_calloc((strlen(username) - tlen) + 1, sizeof(char));
-    memcpy(hostname, username + tlen + 1, strlen(username) - tlen - 1);
+    hostname = silc_memdup(username + tlen + 1, strlen(username) - tlen - 1);
 
     if (strcmp(sock->hostname, sock->ip) && 
        strcmp(sock->hostname, hostname)) {
@@ -2499,9 +2499,9 @@ void silc_server_connection_auth_request(SilcServer server,
                                         SilcSocketConnection sock,
                                         SilcPacketContext *packet)
 {
-  SilcServerConfigSectionClient *client = NULL;
+  SilcServerConfigClient *client = NULL;
   uint16 conn_type;
-  int ret, port;
+  int ret;
   SilcAuthMethod auth_meth = SILC_AUTH_NONE;
 
   SILC_LOG_DEBUG(("Start"));
@@ -2522,10 +2522,9 @@ void silc_server_connection_auth_request(SilcServer server,
 
   /* Get the authentication method for the client */
   auth_meth = SILC_AUTH_NONE;
-  port = server->sockets[server->sock]->port; /* Listenning port */
-  client = silc_server_config_find_client(server, sock->ip, port);
+  client = silc_server_config_find_client(server, sock->ip);
   if (!client)
-    client = silc_server_config_find_client(server, sock->hostname, port);
+    client = silc_server_config_find_client(server, sock->hostname);
   if (client) {
     if (client->passphrase) {
       if (client->publickey && !server->config->prefer_passphrase_auth)