This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.19-267-ga88ddc9
- From: neleai at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 9 Apr 2014 18:11:14 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.19-267-ga88ddc9
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via a88ddc902b804a6156f6e5e5feb979754a3e789a (commit)
from 01f8eac224421f07f28f91cc05db7459ea433ea4 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=a88ddc902b804a6156f6e5e5feb979754a3e789a
commit a88ddc902b804a6156f6e5e5feb979754a3e789a
Author: Peter TB Brett <peter@peter-b.co.uk>
Date: Mon Apr 7 21:56:12 2014 +0100
Use statvfs64() for pathconf(_PC_NAME_MAX).
pathconf(_PC_NAME_MAX) was implemented on top of statfs(). The 32bit
version therefore fails EOVERFLOW if the filesystem blockcount is
sufficiently large.
Most pathconf() queries use statvfs64(), which avoids this issue. This
patch modifies pathconf(_PC_NAME_MAX) to do likewise.
diff --git a/ChangeLog b/ChangeLog
index ae8cab2..414e043 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2014-04-09 Peter Brett <peter@peter-b.co.uk>
+
+ [BZ #15514]
+ * sysdeps/posix/pathconf.c (__pathconf): Use statvfs64() for
+ pathconf(_PC_NAME_MAX).
+
2014-04-09 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
* nptl/sysdeps/pthread/pthread.h (__PTHREAD_MUTEX_HAVE_ELISION):
diff --git a/NEWS b/NEWS
index db8cc10..441eae3 100644
--- a/NEWS
+++ b/NEWS
@@ -9,12 +9,12 @@ Version 2.20
* The following bugs are resolved with this release:
- 6804, 13347, 15347, 15804, 15894, 16002, 16198, 16284, 16348, 16349,
- 16357, 16362, 16447, 16532, 16545, 16574, 16599, 16600, 16609, 16610,
- 16611, 16613, 16623, 16632, 16634, 16639, 16642, 16648, 16649, 16670,
- 16674, 16677, 16680, 16683, 16689, 16695, 16701, 16706, 16707, 16712,
- 16713, 16714, 16731, 16739, 16743, 16758, 16759, 16760, 16770, 16786,
- 16789, 16799, 16800, 16815.
+ 6804, 13347, 15347, 15514, 15804, 15894, 16002, 16198, 16284, 16348,
+ 16349, 16357, 16362, 16447, 16532, 16545, 16574, 16599, 16600, 16609,
+ 16610, 16611, 16613, 16623, 16632, 16634, 16639, 16642, 16648, 16649,
+ 16670, 16674, 16677, 16680, 16683, 16689, 16695, 16701, 16706, 16707,
+ 16712, 16713, 16714, 16731, 16739, 16743, 16758, 16759, 16760, 16770,
+ 16786, 16789, 16799, 16800, 16815.
* Running the testsuite no longer terminates as soon as a test fails.
Instead, a file tests.sum (xtests.sum from "make xcheck") is generated,
diff --git a/sysdeps/posix/pathconf.c b/sysdeps/posix/pathconf.c
index 8aa55e0..ac617d4 100644
--- a/sysdeps/posix/pathconf.c
+++ b/sysdeps/posix/pathconf.c
@@ -65,10 +65,10 @@ __pathconf (const char *path, int name)
case _PC_NAME_MAX:
#ifdef NAME_MAX
{
- struct statfs buf;
+ struct statvfs64 sv;
int save_errno = errno;
- if (__statfs (path, &buf) < 0)
+ if (__statvfs64 (path, &sv) < 0)
{
if (errno == ENOSYS)
{
@@ -79,15 +79,7 @@ __pathconf (const char *path, int 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
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 6 ++++++
NEWS | 12 ++++++------
sysdeps/posix/pathconf.c | 14 +++-----------
3 files changed, 15 insertions(+), 17 deletions(-)
hooks/post-receive
--
GNU C Library master sources