home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
tolkit45.zip
/
os2tk45
/
h
/
stack16
/
sys
/
select.h
< prev
next >
Wrap
Text File
|
1999-05-11
|
1KB
|
50 lines
#ifndef __SELECT_32H
#define __SELECT_32H
/*
** Check for BORLAND Compiler
*/
#ifdef __BORLANDC__ /* DRC01 - BORLAND */
#ifndef _System /* DRC01 */
#define _System _syscall /* DRC01 - redefine _System to _syscall */
#endif /* DRC01 */
#endif /* DRC01 */
#ifdef __HIGHC__ /* DRC02 - changed _System */
#define _System /* DRC02 */
#endif /* DRC02 */
#define NBBY 8 /* number of bits in a byte */
#ifndef FD_SETSIZE
#define FD_SETSIZE 2048
#endif
typedef unsigned int fd_mask;
#define NFDBITS (sizeof(fd_mask) * NBBY) /* bits per mask */
#ifndef howmany
#define howmany(x, y) (((x)+((y)-1))/(y))
#endif
typedef struct fd_set {
fd_mask fds_bits[howmany(FD_SETSIZE, NFDBITS)];
} fd_set;
#define FD_SET(n, p) ((p)->fds_bits[(n)/NFDBITS] |= (1 << ((n) % NFDBITS)))
#define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS)))
#define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1 << ((n) % NFDBITS)))
#define FD_ZERO(p) bzero((char *)(p), sizeof(*(p)))
#ifdef BSD_SELECT
#define select(a,b,c,d,e) bsdselect(a,b,c,d,e)
int _System bsdselect(int,
struct fd_set *,
struct fd_set *,
struct fd_set *,
struct timeval *);
#endif
#endif /* __SELECT_32H */