summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/include/sys/select.h
blob: ce67b8beed04b54cd24eab8782bc95349c669c21 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef _SYS_SELECT_H
#define _SYS_SELECT_H

typedef long int fd_mask;

#define NFDBITS	(8 * sizeof(unsigned long))
#define FD_SETSIZE	1024
#define __FDSET_LONGS	(FD_SETSIZE/NFDBITS)
#define __FDELT(d)	((d) / NFDBITS)
#define __FDMASK(d)	(1UL << ((d) % NFDBITS))

typedef struct {
  unsigned long fds_bits [__FDSET_LONGS];
} fd_set;

#define FD_SET(d, set)	((set)->fds_bits[__FDELT(d)] |= __FDMASK(d))
#define FD_CLR(d, set)	((set)->fds_bits[__FDELT(d)] &= ~__FDMASK(d))
#define FD_ISSET(d, set)	(((set)->fds_bits[__FDELT(d)] & __FDMASK(d)) != 0)
#define FD_ZERO(set)	\
  ((void) memset ((void*) (set), 0, sizeof (fd_set)))

#endif