From c961476e55ec9833ffcb271b54b07e1f9f5d6caa Mon Sep 17 00:00:00 2001 From: nenolod Date: Mon, 5 Mar 2007 09:28:27 -0800 Subject: [PATCH] [svn] - clear up use of fd_table in ircd. --- ChangeLog | 16 ++++++++++++++++ include/serno.h | 2 +- src/s_serv.c | 7 ++++--- 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index d1ad95c07..3e40af94f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,19 @@ +nenolod 2007/03/05 17:23:07 UTC (20070305-3229) + Log: + - use a hashtable for fdlist storage. first step to making the amount of allowed clients dynamic and removing MAXCONNECTIONS. + + + Changes: Modified: + +97 -26 trunk/libcharybdis/commio.c (File Modified) + +3 -2 trunk/libcharybdis/commio.h (File Modified) + +8 -6 trunk/libcharybdis/devpoll.c (File Modified) + +1 -1 trunk/libcharybdis/epoll.c (File Modified) + +2 -2 trunk/libcharybdis/kqueue.c (File Modified) + +3 -3 trunk/libcharybdis/poll.c (File Modified) + +2 -2 trunk/libcharybdis/ports.c (File Modified) + +2 -2 trunk/libcharybdis/select.c (File Modified) + + jilles 2007/03/05 01:14:46 UTC (20070305-3227) Log: Fix some cases where the size argument to strlcpy() diff --git a/include/serno.h b/include/serno.h index 536ffa398..130e6f570 100644 --- a/include/serno.h +++ b/include/serno.h @@ -1 +1 @@ -#define SERNO "20070305-3227" +#define SERNO "20070305-3229" diff --git a/src/s_serv.c b/src/s_serv.c index 9df924d6b..8cadc515b 100644 --- a/src/s_serv.c +++ b/src/s_serv.c @@ -21,7 +21,7 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA * - * $Id: s_serv.c 3183 2007-02-01 01:07:42Z jilles $ + * $Id: s_serv.c 3233 2007-03-05 17:28:27Z nenolod $ */ #include "stdinc.h" @@ -1631,6 +1631,7 @@ serv_connect_callback(int fd, int status, void *data) struct Client *client_p = data; struct server_conf *server_p; char *errstr; + fde_t *F = comm_locate_fd(fd); /* First, make sure its a real client! */ s_assert(client_p != NULL); @@ -1649,9 +1650,9 @@ serv_connect_callback(int fd, int status, void *data) } /* Next, for backward purposes, record the ip of the server */ - memcpy(&client_p->localClient->ip, &fd_table[fd].connect.hostaddr, sizeof client_p->localClient->ip); + memcpy(&client_p->localClient->ip, &F->connect.hostaddr, sizeof client_p->localClient->ip); /* Set sockhost properly now -- jilles */ - inetntop_sock((struct sockaddr *)&fd_table[fd].connect.hostaddr, + inetntop_sock((struct sockaddr *)&F->connect.hostaddr, client_p->sockhost, sizeof client_p->sockhost); /* Check the status */