From: Alan T. DeKok Date: Tue, 27 Mar 2018 12:30:56 +0000 (-0400) Subject: soft fail if too many FDs X-Git-Tag: release_3_0_17~26 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a3fc98b58a50db53fbeb2ec779f88751f86be861;p=thirdparty%2Ffreeradius-server.git soft fail if too many FDs --- diff --git a/src/main/process.c b/src/main/process.c index d938f88aede..76eb3dea4ab 100644 --- a/src/main/process.c +++ b/src/main/process.c @@ -4883,14 +4883,14 @@ static int event_new_fd(rad_listen_t *this) /* * All sockets: add the FD to the event handler. */ - if (!fr_event_fd_insert(el, 0, this->fd, - event_socket_handler, this)) { - ERROR("Failed adding event handler for socket: %s", fr_strerror()); - fr_exit(1); + if (fr_event_fd_insert(el, 0, this->fd, + event_socket_handler, this)) { + this->status = RAD_LISTEN_STATUS_KNOWN; + return 1; } - this->status = RAD_LISTEN_STATUS_KNOWN; - return 1; + ERROR("Failed adding event handler for socket: %s", fr_strerror()); + this->status = RAD_LISTEN_STATUS_REMOVE_NOW; } /* end of INIT */ #ifdef WITH_TCP