summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/fpathconf.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/fpathconf.c')
-rw-r--r--sysdeps/unix/sysv/linux/fpathconf.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/sysdeps/unix/sysv/linux/fpathconf.c b/sysdeps/unix/sysv/linux/fpathconf.c
index a43a58767d..4dd6059974 100644
--- a/sysdeps/unix/sysv/linux/fpathconf.c
+++ b/sysdeps/unix/sysv/linux/fpathconf.c
@@ -32,11 +32,15 @@ __fpathconf (fd, name)
int fd;
int name;
{
- if (name == _PC_LINK_MAX)
+ struct statfs fsbuf;
+
+ switch (name)
{
- struct statfs fsbuf;
+ case _PC_LINK_MAX:
return statfs_link_max (__fstatfs (fd, &fsbuf), &fsbuf);
+ case _PC_FILESIZEBITS:
+ return statfs_filesize_max (__fstatfs (fd, &fsbuf), &fsbuf);
+ default:
+ return posix_fpathconf (fd, name);
}
-
- return posix_fpathconf (fd, name);
}