diff options
author | Ulrich Drepper <drepper@redhat.com> | 2001-04-22 17:37:40 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2001-04-22 17:37:40 +0000 |
commit | a3bbce5b6895a927b60ba92e384e9682afb9d8c3 (patch) | |
tree | d887d4cc901a31f44c93ad69e578380df84b88ec /sysdeps/posix | |
parent | e17e51b4dac7c359049a915d380c4793231e0eda (diff) | |
download | glibc-a3bbce5b6895a927b60ba92e384e9682afb9d8c3.tar.gz glibc-a3bbce5b6895a927b60ba92e384e9682afb9d8c3.tar.xz glibc-a3bbce5b6895a927b60ba92e384e9682afb9d8c3.zip |
Update.
2001-04-22 Ulrich Drepper <drepper@redhat.com> * posix/getconf.c: Fix names of XBS5 LFS test variables. Add missing configuration variables from XPG6. * posix/tst-getconf.c: New file. * posix/Makefile (generated): Add tst-getconf.out. (tests): Add ($objpfx)tst-getconf.out. Add rule to run tst-getconf.sh. * sysdeps/generic/bits/confname.h: Add missing _PC_ and _SC_ values from XPG6. * sysdeps/posix/fpathconf.c: Add handling of _PC_ALLOC_SIZE_MIN and _PC_SYMLINK_MAX. * sysdeps/posix/pathconf.c: Likewise. * sysdeps/posix/sysconf.c: Correct spelling of _SC_MULTI_PROCESS and _SC_SYMLOOP_MAX.
Diffstat (limited to 'sysdeps/posix')
-rw-r--r-- | sysdeps/posix/fpathconf.c | 17 | ||||
-rw-r--r-- | sysdeps/posix/pathconf.c | 17 | ||||
-rw-r--r-- | sysdeps/posix/sysconf.c | 8 |
3 files changed, 38 insertions, 4 deletions
diff --git a/sysdeps/posix/fpathconf.c b/sysdeps/posix/fpathconf.c index 93f0b99590..539a6caa25 100644 --- a/sysdeps/posix/fpathconf.c +++ b/sysdeps/posix/fpathconf.c @@ -202,6 +202,23 @@ __fpathconf (fd, name) return -1; return sv.f_frsize; } + + case _PC_ALLOC_SIZE_MIN: + { + /* XXX It is not entirely clear what the limit is supposed to do. + I assume that the number should reflect the minimal block + alignment. */ + struct statvfs64 sv; + + if (__fstatvfs64 (fd, &sv) < 0) + return -1; + return sv.f_frsize; + } + + case _PC_SYMLINK_MAX: + /* In general there are no limits. If a system has one it should + overwrite this case. */ + return -1; } } diff --git a/sysdeps/posix/pathconf.c b/sysdeps/posix/pathconf.c index edb3961c67..4ce5c0d1d7 100644 --- a/sysdeps/posix/pathconf.c +++ b/sysdeps/posix/pathconf.c @@ -198,6 +198,23 @@ __pathconf (const char *path, int name) return -1; return sv.f_frsize; } + + case _PC_ALLOC_SIZE_MIN: + { + /* XXX It is not entirely clear what the limit is supposed to do. + I assume that the number should reflect the minimal block + alignment. */ + struct statvfs64 sv; + + if (__statvfs64 (path, &sv) < 0) + return -1; + return sv.f_frsize; + } + + case _PC_SYMLINK_MAX: + /* In general there are no limits. If a system has one it should + overwrite this case. */ + return -1; } } diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c index 4b6eced244..7a0cd4204c 100644 --- a/sysdeps/posix/sysconf.c +++ b/sysdeps/posix/sysconf.c @@ -951,9 +951,9 @@ __sysconf (name) return -1; #endif - case _SC_MULTIPLE_PROCESS: -#ifdef _POSIX_MULTIPLE_PROCESS - return _POSIX_MULTIPLE_PROCESS; + case _SC_MULTI_PROCESS: +#ifdef _POSIX_MULTI_PROCESS + return _POSIX_MULTI_PROCESS; #else return -1; #endif @@ -1109,7 +1109,7 @@ __sysconf (name) return -1; #endif - case _SC_SYMLOOP: + case _SC_SYMLOOP_MAX: #ifdef SYMLOOP_MAX return SYMLOOP_MAX; #else |