summaryrefslogtreecommitdiff
path: root/minix/lib/libc/sys/select.c
blob: adc8c8193f800b638d02143d5a5cbbf7d2d68d6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <sys/cdefs.h>
#include <lib.h>
#include "namespace.h"

#include <string.h>
#include <sys/time.h>
#include <sys/select.h>

int select(int nfds,
	fd_set *readfds, fd_set *writefds, fd_set *errorfds,
	struct timeval *timeout)
{
  message m;

  memset(&m, 0, sizeof(m));
  m.m_lc_vfs_select.nfds = nfds;
  m.m_lc_vfs_select.readfds = readfds;
  m.m_lc_vfs_select.writefds = writefds;
  m.m_lc_vfs_select.errorfds = errorfds;
  m.m_lc_vfs_select.timeout = (vir_bytes)timeout;

  return (_syscall(VFS_PROC_NR, VFS_SELECT, &m));
}


#if defined(__minix) && defined(__weak_alias)
__weak_alias(select, __select50)
#endif