Formerly posix/sys/types.h.~14~
[kopensolaris-gnu/glibc.git] / posix / sys / types.h
1 /* Copyright (C) 1991 Free Software Foundation, Inc.
2 This file is part of the GNU C Library.
3
4 The GNU C Library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public License as
6 published by the Free Software Foundation; either version 2 of the
7 License, or (at your option) any later version.
8
9 The GNU C Library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public
15 License along with the GNU C Library; see the file COPYING.LIB.  If
16 not, write to the Free Software Foundation, Inc., 675 Mass Ave,
17 Cambridge, MA 02139, USA.  */
18
19 /*
20  *      POSIX Standard: 2.6 Primitive System Data Types <sys/types.h>
21  */
22
23 #ifndef _SYS_TYPES_H
24
25 #define _SYS_TYPES_H    1
26 #include <features.h>
27
28 #include <gnu/types.h>
29
30 #ifdef  __USE_BSD
31 #define u_char __u_char
32 #define u_short __u_short
33 #define u_int __u_int
34 #define u_long __u_long
35 #define quad __quad
36 #define u_quad __u_quad
37 #endif
38
39 #define dev_t __dev_t
40 #define gid_t __gid_t
41 #define ino_t __ino_t
42 #define mode_t __mode_t
43 #define nlink_t __nlink_t
44 #define off_t __off_t
45 #define pid_t __pid_t
46 #define uid_t __uid_t
47 #ifndef ssize_t
48 #define ssize_t __ssize_t
49 #endif
50
51 #ifdef  __USE_BSD
52 #define daddr_t __daddr_t
53 #define caddr_t __caddr_t
54 #endif
55
56 #define __need_time_t
57 #include <time.h>
58
59 #define __need_size_t
60 #include <stddef.h>
61
62
63 #ifdef  __USE_BSD
64 #define FD_SETSIZE      __FD_SETSIZE
65 #define fd_set          __fd_set
66 #define FD_ZERO(set)    __FD_ZERO(set)
67 #define FD_SET(d, set)  __FD_SET((d), (set))
68 #define FD_CLR(d, set)  __FD_CLR((d), (set))
69 #define FD_ISSET(d, set)__FD_ISSET((d), (set))
70 #endif
71
72 #include <gnu/time.h>
73
74 /* Check the first NFDS descriptors each in READFDS (if not NULL) for read
75    readiness, in WRITEFDS (if not NULL) for write readiness, and in EXCEPTFDS
76    (if not NULL) for exceptional conditions.  If TIMEOUT is not NULL, time out
77    after waiting the interval specified therein.  Returns the number of ready
78    descriptors, or -1 for errors.  */
79 extern int EXFUN(__select, (int __nfds, __fd_set *__readfds,
80                             __fd_set *__writefds, __fd_set *__exceptfds,
81                             struct __timeval *__timeout));
82
83 #ifdef  __USE_BSD
84 #define select  __select
85 #endif  /* Use BSD.  */
86
87
88 #endif  /* sys/types.h */