[__USE_SVID] (key_t): New type.
[kopensolaris-gnu/glibc.git] / posix / sys / types.h
index 3c10445..207ae8d 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1992 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1992, 1994, 1995 Free Software Foundation, Inc.
 This file is part of the GNU C Library.
 
 The GNU C Library is free software; you can redistribute it and/or
@@ -34,8 +34,8 @@ __BEGIN_DECLS
 #define u_short __u_short
 #define u_int __u_int
 #define u_long __u_long
-#define quad __quad
-#define u_quad __u_quad
+#define quad_t __quad_t
+#define u_quad_t __u_quad_t
 #define        fsid_t __fsid_t
 #endif
 
@@ -62,29 +62,65 @@ __BEGIN_DECLS
 #define        __need_size_t
 #include <stddef.h>
 
+#ifdef __USE_MISC
+/* Old compatibility names for C types.  */
+typedef unsigned short int ushort;
+typedef unsigned int uint;
+#endif
+
+#ifdef __USE_BSD
+/* These size-specific names are used by some of the inet code.  */
+
+typedef        char int8_t;
+typedef        unsigned char u_int8_t;
+typedef        short int int16_t;
+typedef        unsigned short int u_int16_t;
+typedef        int int32_t;
+typedef        unsigned int u_int32_t;
+#ifdef __GNUC__
+typedef long long int int64_t;
+typedef unsigned long long int u_int64_t;
+typedef int register_t __attribute__ ((__mode__ (word)));
+#endif
+
+/* Some code from BIND tests this macro to see if the types above are
+   defined.  */
+#define __BIT_TYPES_DEFINED__  1
+#endif
+
+
+#ifdef __USE_SVID
+/* Data type for key value used in System V IPC functions.  */
+typedef long int key_t;
+#endif
+
 
 #ifdef __USE_BSD
+
 #define        FD_SETSIZE      __FD_SETSIZE
+#define        NFDBITS         __NFDBITS
 #define        fd_set          __fd_set
 #define        FD_ZERO(set)    __FD_ZERO(set)
 #define        FD_SET(d, set)  __FD_SET((d), (set))
 #define        FD_CLR(d, set)  __FD_CLR((d), (set))
 #define        FD_ISSET(d, set)__FD_ISSET((d), (set))
-#endif
 
-#include <gnu/time.h>
+/* This being here makes the `select' prototype valid whether or not
+   we have already included <sys/time.h> to define `struct timeval'.  */
+struct timeval;
 
 /* Check the first NFDS descriptors each in READFDS (if not NULL) for read
    readiness, in WRITEFDS (if not NULL) for write readiness, and in EXCEPTFDS
    (if not NULL) for exceptional conditions.  If TIMEOUT is not NULL, time out
    after waiting the interval specified therein.  Returns the number of ready
    descriptors, or -1 for errors.  */
-extern int __select __P ((int __nfds, __fd_set * __readfds,
-                         __fd_set * __writefds, __fd_set * __exceptfds,
-                         struct __timeval * __timeout));
+extern int __select __P ((int __nfds, __fd_set *__readfds,
+                         __fd_set *__writefds, __fd_set *__exceptfds,
+                         struct timeval *__timeout));
+extern int select __P ((int __nfds, __fd_set *__readfds,
+                       __fd_set *__writefds, __fd_set *__exceptfds,
+                       struct timeval *__timeout));
 
-#ifdef __USE_BSD
-#define        select  __select
 #endif /* Use BSD.  */