]> git.puffer.fish Git - mirror/frr.git/commitdiff
lib: abort if fd >= FD_SETSIZE and using select 476/head
authorQuentin Young <qlyoung@cumulusnetworks.com>
Sun, 7 May 2017 04:42:07 +0000 (04:42 +0000)
committerQuentin Young <qlyoung@cumulusnetworks.com>
Sun, 7 May 2017 04:42:07 +0000 (04:42 +0000)
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
lib/thread.c

index d4ed5d1a086605796c7dde5f3e4b935ccd2989df..74d498baf8e89d3c973d59e59711e8ac11922bd0 100644 (file)
@@ -786,6 +786,12 @@ funcname_thread_add_read_write (int dir, struct thread_master *m,
 #if defined (HAVE_POLL)
     thread = generic_thread_add(m, func, arg, fd, dir, debugargpass);
 #else
+    if (fd >= FD_SETSIZE)
+      {
+        zlog_err ("File descriptor %d is >= FD_SETSIZE (%d). Please recompile"
+                  "with --enable-poll=yes", fd, FD_SETSIZE);
+        assert (fd < FD_SETSIZE && !"fd >= FD_SETSIZE");
+      }
     thread_fd_set *fdset = NULL;
     if (dir == THREAD_READ)
       fdset = &m->handler.readfd;