freebsd-ports/lang/modula-3-socks/files/select.c
John Polstra 61ce7c4a22 This package implements SOCKS support for Modula-3 applications. It
will be used to support SOCKS operation in the soon-to-be-released next
version of CVSup.

A tip of the hat to:  Darryl Okahata, who developed the patches
necessary to make the SOCKS library work with Modula-3's multithreaded
I/O system.
1996-11-01 02:37:35 +00:00

20 lines
431 B
C

#include "wrap.h"
#include <sys/types.h>
#include <sys/time.h>
#include <unistd.h>
int
m3_select(int nfds, fd_set *readfds, fd_set *writefds,
fd_set *exceptfds, struct timeval *timeout)
{
int result;
ENTER_CRITICAL;
MAKE_WRITABLE(readfds);
MAKE_WRITABLE(writefds);
MAKE_WRITABLE(exceptfds);
MAKE_READABLE(timeout);
result = select(nfds, readfds, writefds, exceptfds, timeout);
EXIT_CRITICAL;
return result;
}