X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=apps%2Fsilcd%2Fserver.c;h=b9a09d99d4e4dcb830caee5c2e335dd6e5a1aebf;hb=4ecd5017b929bac32862af26ec72a912903b1f97;hp=85cd3c0066ab64953937b8d05ecc527b69f43518;hpb=e1a1c95ac837740ad7d102aca7f6df080cbdb4f6;p=silc.git diff --git a/apps/silcd/server.c b/apps/silcd/server.c index 85cd3c00..b9a09d99 100644 --- a/apps/silcd/server.c +++ b/apps/silcd/server.c @@ -1311,7 +1311,8 @@ SILC_TASK_CALLBACK(silc_server_accept_new_connection_final) entry->data.last_receive = time(NULL); - num_sockets = silc_server_num_sockets_by_ip(server, sock->ip); + num_sockets = silc_server_num_sockets_by_ip(server, sock->ip, + ctx->conn_type); switch (ctx->conn_type) { case SILC_SOCKET_TYPE_CLIENT: @@ -1336,7 +1337,7 @@ SILC_TASK_CALLBACK(silc_server_accept_new_connection_final) max_per_host = conn->param->connections_max_per_host; } - if (num_sockets > max_per_host) { + if (num_sockets >= max_per_host) { SILC_LOG_INFO(("Too many connections from %s (%s), closing connection", sock->hostname, sock->ip)); silc_server_disconnect_remote(server, sock, @@ -1439,7 +1440,7 @@ SILC_TASK_CALLBACK(silc_server_accept_new_connection_final) backup_router = sconn->backup_router; } - if (num_sockets > max_per_host) { + if (num_sockets >= max_per_host) { SILC_LOG_INFO(("Too many connections from %s (%s), closing connection", sock->hostname, sock->ip)); silc_server_disconnect_remote(server, sock,