aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-04-22 17:37:40 +0000
committerUlrich Drepper <drepper@redhat.com>2001-04-22 17:37:40 +0000
commita3bbce5b6895a927b60ba92e384e9682afb9d8c3 (patch)
treed887d4cc901a31f44c93ad69e578380df84b88ec /sysdeps
parente17e51b4dac7c359049a915d380c4793231e0eda (diff)
downloadglibc-a3bbce5b6895a927b60ba92e384e9682afb9d8c3.zip
glibc-a3bbce5b6895a927b60ba92e384e9682afb9d8c3.tar.gz
glibc-a3bbce5b6895a927b60ba92e384e9682afb9d8c3.tar.bz2
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')
-rw-r--r--sysdeps/generic/bits/confname.h27
-rw-r--r--sysdeps/posix/fpathconf.c17
-rw-r--r--sysdeps/posix/pathconf.c17
-rw-r--r--sysdeps/posix/sysconf.c8
4 files changed, 59 insertions, 10 deletions
diff --git a/sysdeps/generic/bits/confname.h b/sysdeps/generic/bits/confname.h
index 56dc021..7c785e8 100644
--- a/sysdeps/generic/bits/confname.h
+++ b/sysdeps/generic/bits/confname.h
@@ -58,8 +58,12 @@ enum
#define _PC_REC_MAX_XFER_SIZE _PC_REC_MAX_XFER_SIZE
_PC_REC_MIN_XFER_SIZE,
#define _PC_REC_MIN_XFER_SIZE _PC_REC_MIN_XFER_SIZE
- _PC_REC_XFER_ALIGN
+ _PC_REC_XFER_ALIGN,
#define _PC_REC_XFER_ALIGN _PC_REC_XFER_ALIGN
+ _PC_ALLOC_SIZE_MIN,
+#define _PC_ALLOC_SIZE_MIN _PC_ALLOC_SIZE_MIN
+ _PC_SYMLINK_MAX
+#define _PC_SYMLINK_MAX _PC_SYMLINK_MAX
};
/* Values for the argument to `sysconf'. */
@@ -384,8 +388,8 @@ enum
#define _SC_FILE_SYSTEM _SC_FILE_SYSTEM
_SC_MONOTONIC_CLOCK,
#define _SC_MONOTONIC_CLOCK _SC_MONOTONIC_CLOCK
- _SC_MULTIPLE_PROCESS,
-#define _SC_MULTIPLE_PROCESS _SC_MULTIPLE_PROCESS
+ _SC_MULTI_PROCESS,
+#define _SC_MULTI_PROCESS _SC_MULTI_PROCESS
_SC_SINGLE_PROCESS,
#define _SC_SINGLE_PROCESS _SC_SINGLE_PROCESS
_SC_NETWORKING,
@@ -430,8 +434,8 @@ enum
#define _SC_2_PBS_MESSAGE _SC_2_PBS_MESSAGE
_SC_2_PBS_TRACK,
#define _SC_2_PBS_TRACK _SC_2_PBS_TRACK
- _SC_SYMLOOP,
-#define _SC_SYMLOOP _SC_SYMLOOP
+ _SC_SYMLOOP_MAX,
+#define _SC_SYMLOOP_MAX _SC_SYMLOOP_MAX
_SC_STREAMS,
#define _SC_STREAMS _SC_STREAMS
_SC_2_PBS_CHECKPOINT,
@@ -443,8 +447,19 @@ enum
#define _SC_V6_ILP32_OFFBIG _SC_V6_ILP32_OFFBIG
_SC_V6_LP64_OFF64,
#define _SC_V6_LP64_OFF64 _SC_V6_LP64_OFF64
- _SC_V6_LPBIG_OFFBIG
+ _SC_V6_LPBIG_OFFBIG,
#define _SC_V6_LPBIG_OFFBIG _SC_V6_LPBIG_OFFBIG
+
+ _SC_HOST_NAME_MAX,
+#define _SC_HOST_NAME_MAX _SC_HOST_NAME_MAX
+ _SC_TRACE,
+#define _SC_TRACE _SC_TRACE
+ _SC_TRACE_EVENT_FILTER,
+#define _SC_TRACE_EVENT_FILTER _SC_TRACE_EVENT_FILTER
+ _SC_TRACE_INHERIT,
+#define _SC_TRACE_INHERIT _SC_TRACE_INHERIT
+ _SC_TRACE_LOG
+#define _SC_TRACE_LOG _SC_TRACE_LOG
};
#if (defined __USE_POSIX2 || defined __USE_UNIX98 \
diff --git a/sysdeps/posix/fpathconf.c b/sysdeps/posix/fpathconf.c
index 93f0b99..539a6ca 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 edb3961..4ce5c0d 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 4b6eced..7a0cd42 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