Subversion Repositories Kolibri OS

Rev

Rev 1408 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. #ifndef _LINUX_POSIX_TYPES_H
  2. #define _LINUX_POSIX_TYPES_H
  3.  
  4. #include <linux/stddef.h>
  5.  
  6. /*
  7.  * This allows for 1024 file descriptors: if NR_OPEN is ever grown
  8.  * beyond that you'll have to change this too. But 1024 fd's seem to be
  9.  * enough even for such "real" unices like OSF/1, so hopefully this is
  10.  * one limit that doesn't have to be changed [again].
  11.  *
  12.  * Note that POSIX wants the FD_CLEAR(fd,fdsetp) defines to be in
  13.  * <sys/time.h> (and thus <linux/time.h>) - but this is a more logical
  14.  * place for them. Solved by having dummy defines in <sys/time.h>.
  15.  */
  16.  
  17. /*
  18.  * Those macros may have been defined in <gnu/types.h>. But we always
  19.  * use the ones here.
  20.  */
  21. #undef __NFDBITS
  22. #define __NFDBITS       (8 * sizeof(unsigned long))
  23.  
  24. #undef __FD_SETSIZE
  25. #define __FD_SETSIZE    1024
  26.  
  27. #undef __FDSET_LONGS
  28. #define __FDSET_LONGS   (__FD_SETSIZE/__NFDBITS)
  29.  
  30. #undef __FDELT
  31. #define __FDELT(d)      ((d) / __NFDBITS)
  32.  
  33. #undef __FDMASK
  34. #define __FDMASK(d)     (1UL << ((d) % __NFDBITS))
  35.  
  36. typedef struct {
  37.         unsigned long fds_bits [__FDSET_LONGS];
  38. } __kernel_fd_set;
  39.  
  40. /* Type of a signal handler.  */
  41. typedef void (*__kernel_sighandler_t)(int);
  42.  
  43. /* Type of a SYSV IPC key.  */
  44. typedef int __kernel_key_t;
  45. typedef int __kernel_mqd_t;
  46.  
  47. #include <asm/posix_types.h>
  48.  
  49. #endif /* _LINUX_POSIX_TYPES_H */
  50.