To fix BZ #18675, use __fstatvfs64 in __fpathconf.
authorPaul Pluzhnikov <ppluzhnikov@google.com>
Thu, 10 Sep 2015 01:41:25 +0000 (18:41 -0700)
committerPaul Pluzhnikov <ppluzhnikov@google.com>
Thu, 10 Sep 2015 01:41:25 +0000 (18:41 -0700)
ChangeLog
NEWS
sysdeps/posix/fpathconf.c

index 5f009a8..c9ec7cc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-09-09  Justin Maggard  <jmaggard@netgear.com>
+
+       [BZ #18675]
+       * sysdeps/posix/fpathconf.c (__fpathconf): Use __fstatvfs64.
+
 2015-09-08  Joseph Myers  <joseph@codesourcery.com>
 
        [BZ #14912]
diff --git a/NEWS b/NEWS
index d397b54..4e1f3a6 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -11,9 +11,9 @@ Version 2.23
 
   2898, 14341, 15786, 16141, 16517, 16519, 16520, 16734, 16973, 17787,
   17905, 18084, 18086, 18240, 18265, 18370, 18421, 18480, 18525, 18610,
-  18618, 18647, 18661, 18674, 18681, 18757, 18778, 18781, 18787, 18789,
-  18790, 18795, 18796, 18820, 18823, 18824, 18863, 18870, 18873, 18887,
-  18921.
+  18618, 18647, 18661, 18674, 18675, 18681, 18757, 18778, 18781, 18787,
+  18789, 18790, 18795, 18796, 18820, 18823, 18824, 18863, 18870, 18873,
+  18887, 18921.
 
 * The obsolete header <regexp.h> has been removed.  Programs that require
   this header must be updated to use <regex.h> instead.
index 25f632e..088eb15 100644 (file)
@@ -66,10 +66,10 @@ __fpathconf (fd, name)
     case _PC_NAME_MAX:
 #ifdef NAME_MAX
       {
-       struct statfs buf;
+       struct statvfs64 sv;
        int save_errno = errno;
 
-       if (__fstatfs (fd, &buf) < 0)
+       if (__fstatvfs64 (fd, &sv) < 0)
          {
            if (errno == ENOSYS)
              {
@@ -83,15 +83,7 @@ __fpathconf (fd, name)
          }
        else
          {
-#ifdef _STATFS_F_NAMELEN
-           return buf.f_namelen;
-#else
-# ifdef _STATFS_F_NAME_MAX
-           return buf.f_name_max;
-# else
-           return NAME_MAX;
-# endif
-#endif
+           return sv.f_namemax;
          }
       }
 #else