-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Closed
Description
Looks like this belongs either in bsd42 or posix01.
From select(2) of Linux man pages:
/* According to POSIX.1-2001 */
#include <sys/select.h>
/* According to earlier standards */
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
int select(int nfds, fd_set *readfds, fd_set *writefds,
fd_set *exceptfds, struct timeval *timeout);
void FD_CLR(int fd, fd_set *set);
int FD_ISSET(int fd, fd_set *set);
void FD_SET(int fd, fd_set *set);
void FD_ZERO(fd_set *set);
From select(2) of BSD System Calls Manual:
#include <sys/select.h>
void
FD_CLR(fd, fd_set *fdset);
void
FD_COPY(fd_set *fdset_orig, fd_set *fdset_copy);
int
FD_ISSET(fd, fd_set *fdset);
void
FD_SET(fd, fd_set *fdset);
void
FD_ZERO(fd_set *fdset);
int
select(int nfds, fd_set *restrict readfds, fd_set *restrict writefds, fd_set *restrict errorfds, struct timeval *restrict timeout);
And then on Windows, which only works for sockets:
int select(
_In_ int nfds,
_Inout_ fd_set *readfds,
_Inout_ fd_set *writefds,
_Inout_ fd_set *exceptfds,
_In_ const struct timeval *timeout
);
With FD_CLR, FD_ISSET, FD_SET, and FD_ZERO defined as macros on most (all?) platforms.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels