7 typedef struct stat t_fstat;
14 typedef unsigned long pid_t;
15 typedef unsigned long tid_t;
16 typedef signed long long time_t;
18 typedef unsigned int uint;
20 typedef unsigned short fd_set_ent_t;
23 * \brief fd_set for select()
27 fd_set_ent_t flags[FD_SETSIZE/16];
31 unsigned long object; //!< Group or user (bit 31 determines)
32 unsigned long perms; //!< Inverted by bit 31
36 unsigned long long inode;
40 unsigned long long size;
45 struct s_sysACL acls[];
47 typedef struct s_sysFInfo t_sysFInfo;
48 typedef struct s_sysACL t_sysACL;
50 static inline void FD_ZERO(fd_set *fdsetp) {int i=FD_SETSIZE/16;while(i--)fdsetp->flags[i]=0; }
51 static inline void FD_CLR(int fd, fd_set *fdsetp) {
52 if(fd < 0 || fd > FD_SETSIZE) return;
53 fdsetp->flags[fd/16] &= (fd_set_ent_t) ((~1 << (fd%16))) & 0xFFFF;
55 static inline void FD_SET(int fd, fd_set *fdsetp) {
56 if(fd < 0 || fd > FD_SETSIZE) return;
57 fdsetp->flags[fd/16] |= (fd_set_ent_t) (1 << (fd%16));
59 static inline int FD_ISSET(int fd, fd_set *fdsetp) {
60 if(fd < 0 || fd > FD_SETSIZE) return 0;
61 return !!( fdsetp->flags[fd/16] & (1<<(fd%16)) );