simplify io_library_init*

This commit is contained in:
Florian Westphal 2006-09-16 16:47:27 +00:00
parent 147de9dfa9
commit 0d6f9d4e3e
1 changed files with 14 additions and 20 deletions

View File

@ -12,7 +12,7 @@
#include "portab.h" #include "portab.h"
static char UNUSED id[] = "$Id: io.c,v 1.18 2006/09/16 15:00:10 fw Exp $"; static char UNUSED id[] = "$Id: io.c,v 1.19 2006/09/16 16:47:27 fw Exp $";
#include <assert.h> #include <assert.h>
#include <stdlib.h> #include <stdlib.h>
@ -111,7 +111,7 @@ io_event_get(int fd)
#ifdef IO_USE_POLL #ifdef IO_USE_POLL
static bool static void
io_library_init_poll(unsigned int eventsize) io_library_init_poll(unsigned int eventsize)
{ {
struct pollfd *p; struct pollfd *p;
@ -128,13 +128,12 @@ io_library_init_poll(unsigned int eventsize)
library_initialized = true; library_initialized = true;
} }
return p != NULL;
} }
#endif #endif
#ifdef IO_USE_SELECT #ifdef IO_USE_SELECT
static bool static void
io_library_init_select(unsigned int eventsize) io_library_init_select(unsigned int eventsize)
{ {
Log(LOG_INFO, "IO subsystem: select (initial maxfd %u).", Log(LOG_INFO, "IO subsystem: select (initial maxfd %u).",
@ -151,16 +150,14 @@ io_library_init_select(unsigned int eventsize)
} }
#endif /* FD_SETSIZE */ #endif /* FD_SETSIZE */
library_initialized = true; library_initialized = true;
return true;
} }
#endif /* SELECT */ #endif /* SELECT */
#ifdef IO_USE_EPOLL #ifdef IO_USE_EPOLL
static bool static void
io_library_init_epoll(unsigned int eventsize) io_library_init_epoll(unsigned int eventsize)
{ {
bool ret;
int ecreate_hint = (int)eventsize; int ecreate_hint = (int)eventsize;
if (ecreate_hint <= 0) if (ecreate_hint <= 0)
ecreate_hint = 128; ecreate_hint = 128;
@ -168,27 +165,23 @@ io_library_init_epoll(unsigned int eventsize)
Log(LOG_INFO, Log(LOG_INFO,
"IO subsystem: epoll (hint size %d, initial maxfd %u, masterfd %d).", "IO subsystem: epoll (hint size %d, initial maxfd %u, masterfd %d).",
ecreate_hint, eventsize, io_masterfd); ecreate_hint, eventsize, io_masterfd);
ret = io_masterfd >= 0; if (io_masterfd >= 0)
if (ret) library_initialized = true; library_initialized = true;
return ret;
} }
#endif #endif
#ifdef IO_USE_KQUEUE #ifdef IO_USE_KQUEUE
static bool static void
io_library_init_kqueue(unsigned int eventsize) io_library_init_kqueue(unsigned int eventsize)
{ {
bool ret;
io_masterfd = kqueue(); io_masterfd = kqueue();
Log(LOG_INFO, Log(LOG_INFO,
"IO subsystem: kqueue (initial maxfd %u, masterfd %d)", "IO subsystem: kqueue (initial maxfd %u, masterfd %d)",
eventsize, io_masterfd); eventsize, io_masterfd);
ret = io_masterfd >= 0; if (io_masterfd >= 0)
if (ret) library_initialized = true; library_initialized = true;
return ret;
} }
#endif #endif
@ -210,17 +203,18 @@ io_library_init(unsigned int eventsize)
if ((eventsize > 0) && !array_alloc(&io_events, sizeof(io_event), (size_t)eventsize)) if ((eventsize > 0) && !array_alloc(&io_events, sizeof(io_event), (size_t)eventsize))
eventsize = 0; eventsize = 0;
#ifdef IO_USE_EPOLL #ifdef IO_USE_EPOLL
return io_library_init_epoll(eventsize); io_library_init_epoll(eventsize);
#endif #endif
#ifdef IO_USE_KQUEUE #ifdef IO_USE_KQUEUE
return io_library_init_kqueue(eventsize); io_library_init_kqueue(eventsize);
#endif #endif
#ifdef IO_USE_POLL #ifdef IO_USE_POLL
return io_library_init_poll(eventsize); io_library_init_poll(eventsize);
#endif #endif
#ifdef IO_USE_SELECT #ifdef IO_USE_SELECT
return io_library_init_select(eventsize); io_library_init_select(eventsize);
#endif #endif
return library_initialized;
} }