]> git.netwichtig.de Git - user/henk/code/inspircd.git/commitdiff
Removed server socket stuff from socketengine
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>
Fri, 25 Nov 2005 10:03:48 +0000 (10:03 +0000)
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>
Fri, 25 Nov 2005 10:03:48 +0000 (10:03 +0000)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1933 e03df62e-2008-0410-955e-edbf42e46eb7

include/socketengine.h
src/inspircd.cpp

index 8c74ce04427ccfba1ab6651821eb55e22fe9c483..5c5eca1d2af19f183acc182ca33ed2b6fa18f3ba 100644 (file)
 #define engine_scanset select_scanset
 #endif
 
-// how to populate the list with fds before asking for change notification
-
-#define epoll_server_populate               i = epoll_wait(sep, event, 1, EP_DELAY); \
-                                       if (i > 0) \
-                                       { \
-                                               log(DEBUG,"epoll: Listening server socket event, i=%d, event.data.fd=%d",i,event[0].data.fd); \
-                                               for (int x = 0; x != SERVERportCount; x++) \
-                                               { \
-                                                       if ((me[x]) && ((unsigned)event[0].data.fd == (unsigned)me[x]->fd)) \
-                                                       {
-#define kqueue_server_populate              ts.tv_sec = 0; \
-                                       ts.tv_nsec = 30000L; \
-                                       i = kevent(skq, NULL, 0, &ke, 1, &ts); \
-                                       if (i > 0) \
-                                       { \
-                                               log(DEBUG,"kqueue: Listening server socket event, i=%d, ke.ident=%d",i,ke.ident); \
-                                               for (int x = 0; x != SERVERportCount; x++) \
-                                               { \
-                                                       if ((me[x]) && ((unsigned)ke.ident == (unsigned)me[x]->fd)) \
-                                                       {
-
-#define select_server_populate              FD_ZERO(&serverfds); \
-                                       for (int x = 0; x != SERVERportCount; x++) \
-                                       { \
-                                               if (me[x]) \
-                                                       FD_SET(me[x]->fd, &serverfds); \
-                                       } \
-                                       tvs.tv_usec = 30000L; \
-                                       tvs.tv_sec = 0; \
-                                       int servresult = select(FD_SETSIZE, &serverfds, NULL, NULL, &tvs); \
-                                       if (servresult > 0) \
-                                       { \
-                                               for (int x = 0; x != SERVERportCount; x++) \
-                                               { \
-                                                       if ((me[x]) && (FD_ISSET (me[x]->fd, &serverfds))) \
-                                                       { 
-
-
-#ifdef USE_EPOLL
-#define engine_server_populate epoll_server_populate
-#endif
-#ifdef USE_KQUEUE
-#define engine_server_populate kqueue_server_populate
-#endif
-#ifdef USE_SELECT
-#define engine_server_populate select_server_populate
-#endif
-
 // a list of variables used specifically by this engine
 
 #define kqueue_structs struct kevent ke; \
 
 #define epoll_structs struct epoll_event event[33];
 
-#define select_structs fd_set serverfds; \
-        fd_set sfd;
+#define select_structs fd_set sfd;
 
 #ifdef USE_EPOLL
 #define engine_structs epoll_structs
 #define engine_init select_init
 #endif
 
-// how to fill the engine with a list of server fd's
-
-#define        select_server_fill      log(DEFAULT,"Using standard select socket engine.");
-
-#define epoll_server_fill        log(DEFAULT,"epoll socket engine is enabled. Filling listen list. boundPortcount=%d",boundPortCount); \
-                               for (count = 0; count < boundPortCount; count++) \
-                               { \
-                                       struct epoll_event ev; \
-                                       log(DEBUG,"epoll: Add listening socket to events, ep=%d socket=%d",lep,openSockfd[count]); \
-                                       ev.events = EPOLLIN | EPOLLET; \
-                                       ev.data.fd = openSockfd[count]; \
-                                       int i = epoll_ctl(lep, EPOLL_CTL_ADD, openSockfd[count], &ev); \
-                                       if (i < 0) \
-                                       { \
-                                               log(DEFAULT,"main: add listen ports, epoll_ctl failed!"); \
-                                               printf("ERROR: could not initialise listening sockets in epoll list. Shutting down.\n"); \
-                                               Exit(ERROR); \
-                                       } \
-                               } \
-                               for (int t = 0; t != SERVERportCount; t++) \
-                               { \
-                                       struct epoll_event ev; \
-                                       log(DEBUG,"epoll: Add listening server socket to events, ep=%d socket=%d",sep,me[t]->fd); \
-                                       ev.events = EPOLLIN | EPOLLET; \
-                                       ev.data.fd = me[t]->fd; \
-                                       int i = epoll_ctl(sep, EPOLL_CTL_ADD, me[t]->fd, &ev); \
-                                       if (i == -1) \
-                                       { \
-                                               log(DEFAULT,"main: add server listen ports, epoll_ctl failed!"); \
-                                               printf("ERROR: could not initialise server listening sockets in epoll list. Shutting down.\n"); \
-                                               Exit(ERROR); \
-                                       } \
-                               }
-
-#define kqueue_server_fill        log(DEFAULT,"kqueue socket engine is enabled. Filling listen list."); \
-        for (count = 0; count < boundPortCount; count++) \
-        { \
-                struct kevent ke; \
-                log(DEBUG,"kqueue: Add listening socket to events, kq=%d socket=%d",lkq,openSockfd[count]); \
-                EV_SET(&ke, openSockfd[count], EVFILT_READ, EV_ADD, 0, MaxConn, NULL); \
-                int i = kevent(lkq, &ke, 1, 0, 0, NULL); \
-                if (i == -1) \
-                { \
-                        log(DEFAULT,"main: add listen ports to kqueue failed!"); \
-                        printf("ERROR: could not initialise listening sockets in kqueue. Shutting down.\n"); \
-                        Exit(ERROR); \
-                } \
-        } \
-        for (int t = 0; t != SERVERportCount; t++) \
-        { \
-                struct kevent ke; \
-                if (me[t]) \
-                { \
-                        log(DEBUG,"kqueue: Add listening SERVER socket to events, kq=%d socket=%d",skq,me[t]->fd); \
-                        EV_SET(&ke, me[t]->fd, EVFILT_READ, EV_ADD, 0, MaxConn, NULL); \
-                        int i = kevent(skq, &ke, 1, 0, 0, NULL); \
-                        if (i == -1) \
-                        { \
-                                log(DEFAULT,"main: add server listen ports to kqueue failed!"); \
-                                printf("ERROR: could not initialise listening server sockets in kqueue. Shutting down.\n"); \
-                                Exit(ERROR); \
-                        } \
-                } \
-        }
-
-#ifdef USE_EPOLL
-#define engine_server_fill epoll_server_fill
-#endif
-#ifdef USE_KQUEUE
-#define engine_server_fill kqueue_server_fill
-#endif
-#ifdef USE_SELECT
-#define engine_server_fill select_server_fill
-#endif
-
 // how to delete a client fd from the engine
 
 #define kqueue_delete_fd        struct kevent ke; \
index 04777ae19f251fb11dfc34eeb91df2fcd1335962..03002ae5528d709bb6af5fa4d320be7913d9922a 100644 (file)
@@ -2583,7 +2583,7 @@ int InspIRCd(char** argv, int argc)
 
        AddServerName(ServerName);
 
-       int clientportcount = 0, serverportcount = 0;
+       int clientportcount = 0;
 
        for (count = 0; count < ConfValueEnum("bind",&config_f); count++)
        {
@@ -2592,24 +2592,7 @@ int InspIRCd(char** argv, int argc)
                ConfValue("bind","type",count,Type,&config_f);
                if (!strcmp(Type,"servers"))
                {
-                       char Default[MAXBUF];
-                       strcpy(Default,"no");
-                       ConfValue("bind","default",count,Default,&config_f);
-                       if (strchr(Default,'y'))
-                       {
-                               defaultRoute = serverportcount;
-                               log(DEBUG,"InspIRCd: startup: binding '%s:%s' is default server route",Addr,configToken);
-                       }
-                       me[serverportcount] = new serverrec(ServerName,100L,false);
-                       if (!me[serverportcount]->CreateListener(Addr,atoi(configToken)))
-                       {
-                               log(DEFAULT,"Warning: Failed to bind port %lu",(unsigned long)atoi(configToken));
-                               printf("Warning: Failed to bind port %lu\n",(unsigned long)atoi(configToken));
-                       }
-                       else
-                       {
-                               serverportcount++;
-                       }
+                       // modules handle this bind type now.
                }
                else
                {
@@ -2620,9 +2603,8 @@ int InspIRCd(char** argv, int argc)
                log(DEBUG,"InspIRCd: startup: read binding %s:%s [%s] from config",Addr,configToken, Type);
        }
        portCount = clientportcount;
-       SERVERportCount = serverportcount;
          
-       log(DEBUG,"InspIRCd: startup: read %lu total client ports and %lu total server ports",(unsigned long)portCount,(unsigned long)SERVERportCount);
+       log(DEBUG,"InspIRCd: startup: read %lu total client ports",(unsigned long)portCount);
        log(DEBUG,"InspIRCd: startup: InspIRCd is now starting!");
        
        printf("\n");
@@ -2701,7 +2683,6 @@ int InspIRCd(char** argv, int argc)
         }
 
        engine_init;
-       engine_server_fill;
 
        WritePID(PID);