aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/pathconf.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-10-18 19:03:55 +0000
committerRoland McGrath <roland@gnu.org>2002-10-18 19:03:55 +0000
commit69c708edbc722e0f51fe1f6c50ebf1ca7924eb83 (patch)
tree2e6c82d058c29088dd4fa9b461e25e1c71dbf6a1 /sysdeps/unix/sysv/linux/pathconf.c
parent2e9d4e8c883c1145bca2710e7fba83e9387c664b (diff)
downloadglibc-69c708edbc722e0f51fe1f6c50ebf1ca7924eb83.tar
glibc-69c708edbc722e0f51fe1f6c50ebf1ca7924eb83.tar.gz
glibc-69c708edbc722e0f51fe1f6c50ebf1ca7924eb83.tar.bz2
glibc-69c708edbc722e0f51fe1f6c50ebf1ca7924eb83.zip
* sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
(statfs_filesize_max): New function. * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC, JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC, ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define. * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use statfs_filesize_max. * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise. * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed. * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
Diffstat (limited to 'sysdeps/unix/sysv/linux/pathconf.c')
-rw-r--r--sysdeps/unix/sysv/linux/pathconf.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/sysdeps/unix/sysv/linux/pathconf.c b/sysdeps/unix/sysv/linux/pathconf.c
index 50a4b3ada4..6115335334 100644
--- a/sysdeps/unix/sysv/linux/pathconf.c
+++ b/sysdeps/unix/sysv/linux/pathconf.c
@@ -30,11 +30,15 @@ static long int posix_pathconf (const char *file, int name);
long int
__pathconf (const char *file, int name)
{
- if (name == _PC_LINK_MAX)
+ struct statfs fsbuf;
+
+ switch (name)
{
- struct statfs fsbuf;
+ case _PC_LINK_MAX:
return statfs_link_max (__statfs (file, &fsbuf), &fsbuf);
+ case _PC_FILESIZEBITS:
+ return statfs_filesize_max (__statfs (file, &fsbuf), &fsbuf);
+ default:
+ return posix_pathconf (file, name);
}
-
- return posix_pathconf (file, name);
}