From 280f4add8a69e0cf549bbe09e067424d8394a079 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 25 Apr 2001 01:11:30 +0000 Subject: Update. * sysdeps/generic/bits/confname.h: Add _CS_V6_WIDTH_RESTRICTED_ENVS. * posix/confstr.c: Handle _CS_V6_WIDTH_RESTRICTED_ENVS. * posix/getconf.c: Handle _POSIX_V6_WIDTH_RESTRICTED_ENVS. * posix/tst-getconf.sh: Add _POSIX_V6_WIDTH_RESTRICTED_ENVS. --- posix/confstr.c | 38 ++++++++++++++++++++++++++++++++++++++ posix/getconf.c | 4 ++++ posix/tst-getconf.sh | 1 + 3 files changed, 43 insertions(+) (limited to 'posix') diff --git a/posix/confstr.c b/posix/confstr.c index 487e5fe28a..053e9ed247 100644 --- a/posix/confstr.c +++ b/posix/confstr.c @@ -57,6 +57,44 @@ confstr (name, buf, len) break; #endif + case _CS_V6_WIDTH_RESTRICTED_ENVS: + /* We have to return a newline-separated list of named of + programming environements in which the widths of blksize_t, + cc_t, mode_t, nfds_t, pid_t, ptrdiff_t, size_t, speed_t, + ssize_t, suseconds_t, tcflag_t, useconds_t, wchar_t, and + wint_t types are no greater than the width of type long. + + Currently this means all environment which the system allows. */ + { + static const char restenvs[] = +#if _POSIX_V6_ILP32_OFF32 > 0 + "_POSIX_V6_ILP32_OFF32" +#endif +#if _POSIX_V6_ILP32_OFFBIG > 0 +# if _POSIX_V6_ILP32_OFF32 > 0 + "\n" +# endif + "_POSIX_V6_ILP32_OFFBIG" +#endif +#if _POSIX_V6_LP64_OFF64 > 0 +# if _POSIX_V6_ILP32_OFF32 > 0 || _POSIX_V6_ILP32_OFFBIG > 0 + "\n" +# endif + "_POSIX_V6_LP64_OFF64" +#endif +#if _POSIX_V6_LPBIG_OFFBIG > 0 +# if _POSIX_V6_ILP32_OFF32 > 0 || _POSIX_V6_ILP32_OFFBIG > 0 \ + || _POSIX_V6_LP64_OFF64 > 0 + "\n" +# endif + "_POSIX_V6_LPBIG_OFFBIG" +#endif + ; + string = restenvs; + string_len = sizeof (restenvs); + } + break; + case _CS_LFS_LINTFLAGS: case _CS_LFS_LDFLAGS: case _CS_LFS_LIBS: diff --git a/posix/getconf.c b/posix/getconf.c index 9458e1ef4b..8d5197e730 100644 --- a/posix/getconf.c +++ b/posix/getconf.c @@ -609,6 +609,10 @@ static const struct conf vars[] = { "POSIX_V6_ILP32_OFF32_LINTFLAGS", _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS, CONFSTR }, #endif +#ifdef _CS_V6_WIDTH_RESTRICTED_ENVS + { "_POSIX_V6_WIDTH_RESTRICTED_ENVS", _CS_V6_WIDTH_RESTRICTED_ENVS, CONFSTR }, +#endif + #ifdef _SC_V6_ILP32_OFFBIG { "_POSIX_V6_ILP32_OFFBIG", _SC_V6_ILP32_OFFBIG, SYSCONF }, #endif diff --git a/posix/tst-getconf.sh b/posix/tst-getconf.sh index e8f27b323f..6b5c433b8a 100644 --- a/posix/tst-getconf.sh +++ b/posix/tst-getconf.sh @@ -111,6 +111,7 @@ _POSIX_V6_ILP32_OFF32 _POSIX_V6_ILP32_OFFBIG _POSIX_V6_LP64_OFF64 _POSIX_V6_LPBIG_OFFBIG +_POSIX_V6_WIDTH_RESTRICTED_ENVS POSIX2_C_BIND POSIX2_C_DEV POSIX2_C_VERSION -- cgit v1.2.3