From f4b7935bb9fbd9fd36291dfcfd8c30374fe7afba Mon Sep 17 00:00:00 2001 From: Laurence Withers Date: Sat, 27 Oct 2007 15:24:34 +0000 Subject: [PATCH] Mark lwevent_epoll_fd FD_CLOEXEC and don't expose it to users --- src/liblwevent/200_eventloop.c | 8 +++++++- src/liblwevent/200_eventloop.h | 11 ----------- 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/src/liblwevent/200_eventloop.c b/src/liblwevent/200_eventloop.c index 0aec47a..a210568 100644 --- a/src/liblwevent/200_eventloop.c +++ b/src/liblwevent/200_eventloop.c @@ -10,7 +10,7 @@ /* lwevent_epoll_fd * File descriptor returned by epoll_create(). Initialised in lwevent_init(). */ -int lwevent_epoll_fd; +static int lwevent_epoll_fd; @@ -60,6 +60,12 @@ int lwevent_init(void) return -1; } + if(lwevent_cloexec(lwevent_epoll_fd)) { + free(_lw_revents); + close(lwevent_epoll_fd); + return -1; + } + return 0; } diff --git a/src/liblwevent/200_eventloop.h b/src/liblwevent/200_eventloop.h index 4b7f183..9289cc9 100644 --- a/src/liblwevent/200_eventloop.h +++ b/src/liblwevent/200_eventloop.h @@ -18,17 +18,6 @@ program should exit), and lwevent_wait(), which implements a single run of the e -/*! \brief Event loop file descriptor. - -The file descriptor returned from \c epoll_create(2). Use of this file descriptor is not -recommended, although it is made available in case an application ever needs to access it (perhaps -to close after a \c fork(2), etc.). - -*/ -extern int lwevent_epoll_fd; - - - /*! \brief Initialise library. \retval 0 on success.