summaryrefslogtreecommitdiff
path: root/posix
diff options
context:
space:
mode:
Diffstat (limited to 'posix')
-rw-r--r--posix/getconf.c15
-rw-r--r--posix/posix1_lim.h16
-rw-r--r--posix/sys/types.h30
-rw-r--r--posix/unistd.h11
4 files changed, 43 insertions, 29 deletions
diff --git a/posix/getconf.c b/posix/getconf.c
index 26d1d381b9..699cf67bfe 100644
--- a/posix/getconf.c
+++ b/posix/getconf.c
@@ -38,6 +38,7 @@ static struct conf vars[] =
{ "NAME_MAX", _PC_NAME_MAX, PATHCONF },
{ "PATH_MAX", _PC_PATH_MAX, PATHCONF },
{ "PIPE_BUF", _PC_PIPE_BUF, PATHCONF },
+ { "SOCK_MAXBUF", _PC_SOCK_MAXBUF, PATHCONF },
{ "_POSIX_CHOWN_RESTRICTED", _PC_CHOWN_RESTRICTED, PATHCONF },
{ "_POSIX_NO_TRUNC", _PC_NO_TRUNC, PATHCONF },
{ "_POSIX_VDISABLE", _PC_VDISABLE, PATHCONF },
@@ -67,6 +68,20 @@ static struct conf vars[] =
{ "_POSIX_SEMAPHORES", _SC_SEMAPHORES, SYSCONF },
{ "_POSIX_SHARED_MEMORY_OBJECTS", _SC_SHARED_MEMORY_OBJECTS, SYSCONF },
{ "_POSIX_VERSION", _SC_VERSION, SYSCONF },
+ { "_POSIX_PII", _SC_PII, SYSCONF },
+ { "_POSIX_PII_XTI", _SC_PII_XTI, SYSCONF },
+ { "_POSIX_PII_SOCKET", _SC_PII_SOCKET, SYSCONF },
+ { "_POSIX_PII_INTERNET", _SC_PII_INTERNET, SYSCONF },
+ { "_POSIX_PII_OSI", _SC_PII_OSI, SYSCONF },
+ { "_POSIX_POLL", _SC_POLL, SYSCONF },
+ { "_POSIX_SELECT", _SC_SELECT, SYSCONF },
+ { "UIO_MAXIOV", _SC_UIO_MAXIOV, SYSCONF },
+ { "_POSIX_PII_INTERNET_STREAM", _SC_PII_INTERNET_STREAM, SYSCONF },
+ { "_POSIX_PII_INTERNET_DGRAM", _SC_PII_INTERNET_DGRAM, SYSCONF },
+ { "_POSIX_PII_OSI_COTS", _SC_PII_OSI_COTS, SYSCONF },
+ { "_POSIX_PII_OSI_CLTS", _SC_PII_OSI_CLTS, SYSCONF },
+ { "_POSIX_PII_OSI_M", _SC_PII_OSI_M, SYSCONF },
+ { "_T_IOV_MAX", _SC_T_IOV_MAX, SYSCONF },
{ "PATH", _CS_PATH, CONFSTR },
diff --git a/posix/posix1_lim.h b/posix/posix1_lim.h
index acbfa64481..287e9a2d19 100644
--- a/posix/posix1_lim.h
+++ b/posix/posix1_lim.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1992, 1993, 1996 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
@@ -49,6 +49,10 @@ Cambridge, MA 02139, USA. */
/* Number of files one process can have open at once. */
#define _POSIX_OPEN_MAX 16
+/* Number of descriptors that a process may examine with `pselect' or
+ `select'. */
+#define _POSIX_FD_SETSIZE _POSIX_OPEN_MAX
+
/* Number of bytes in a filename. */
#define _POSIX_NAME_MAX 14
@@ -67,6 +71,16 @@ Cambridge, MA 02139, USA. */
/* Maximum length of a timezone name (element of `tzname'). */
#define _POSIX_TZNAME_MAX 3
+/* Maximum number of connections that can be queued on a socket. */
+#define _POSIX_QLIMIT 1
+
+/* Maximem number of bytes that can be buffered on a socket for send
+ or receive. */
+#define _POSIX_HIWAT _POSIX_PIPE_BUF
+
+/* Maximum number of elements in an `iovec' array. */
+#define _POSIX_UIO_MAXIOV 16
+
/* Get the implementation-specific values for the above. */
#include <local_lim.h>
diff --git a/posix/sys/types.h b/posix/sys/types.h
index 8265fa0cb6..05d63d6f33 100644
--- a/posix/sys/types.h
+++ b/posix/sys/types.h
@@ -122,35 +122,9 @@ typedef long int key_t;
#ifdef __USE_BSD
/* In BSD <sys/types.h> is expected to define BYTE_ORDER. */
#include <endian.h>
-#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))
-
-/* 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));
+/* It also defines `fd_set' and the FD_* macros for `select'. */
+#include <sys/select.h>
#endif /* Use BSD. */
diff --git a/posix/unistd.h b/posix/unistd.h
index 1e35ea0392..92e874ed5e 100644
--- a/posix/unistd.h
+++ b/posix/unistd.h
@@ -79,6 +79,17 @@ __BEGIN_DECLS
_POSIX_MESSAGE_PASSING POSIX.4 message queues are supported.
_POSIX_SEMAPHORES POSIX.4 counting semaphores are supported.
_POSIX_SHARED_MEMORY_OBJECTS POSIX.4 shared memory objects are supported.
+ _POSIX_PII Protocol-independent interfaces are supported.
+ _POSIX_PII_XTI XTI protocol-indep. interfaces are supported.
+ _POSIX_PII_SOCKET Socket protocol-indep. interfaces are supported.
+ _POSIX_PII_INTERNET Internet family of protocols supported.
+ _POSIX_PII_INTERNET_STREAM Connection-mode Internet protocol supported.
+ _POSIX_PII_INTERNET_DGRAM Connectionless Internet protocol supported.
+ _POSIX_PII_OSI ISO/OSI family of protocols supported.
+ _POSIX_PII_OSI_COTS Connection-mode ISO/OSI service supported.
+ _POSIX_PII_OSI_CLTS Connectionless ISO/OSI service supported.
+ _POSIX_POLL Implementation supports `poll' function.
+ _POSIX_SELECT Implementation supports `select' and `pselect'.
If any of these symbols is defined as -1, the corresponding option is not
true for any file. If any is defined as other than -1, the corresponding