/* sysselect.h - System-dependent definitions for the select function. Copyright (C) 1995 Free Software Foundation, Inc.This file is part of GNU Emacs.GNU Emacs is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2, or (at your option)any later version.GNU Emacs is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with GNU Emacs; see the file COPYING. If not, write tothe Free Software Foundation, Inc., 59 Temple Place - Suite 330,Boston, MA 02111-1307, USA. */#ifdef HAVE_SYS_SELECT#include <sys/select.h>#endif#ifdef FD_SET#ifdef FD_SETSIZE#define MAXDESC FD_SETSIZE#else#define MAXDESC 64#endif#define SELECT_TYPE fd_set#else /* no FD_SET */#define MAXDESC 32#define SELECT_TYPE int/* Define the macros to access a single-int bitmap of descriptors. */#define FD_SET(n, p) (*(p) |= (1 << (n)))#define FD_CLR(n, p) (*(p) &= ~(1 << (n)))#define FD_ISSET(n, p) (*(p) & (1 << (n)))#define FD_ZERO(p) (*(p) = 0)#endif /* no FD_SET */#if !defined (HAVE_SELECT) || defined (BROKEN_SELECT_NON_X)#define select sys_select#endif