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.23-131-ga603305
- From: fw at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 29 Mar 2016 09:28:34 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.23-131-ga603305
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 a6033052d08027f745867e5e346852da1959226c (commit)
from 0791f91dff9a77263fa8173b143d854cad902c6d (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=a6033052d08027f745867e5e346852da1959226c
commit a6033052d08027f745867e5e346852da1959226c
Author: Florian Weimer <fweimer@redhat.com>
Date: Tue Mar 29 11:27:32 2016 +0200
nss_db: Propagate ERANGE error if parse_line fails [BZ #19837]
Reproducer (needs to run as root):
perl -e \
'print "large:x:999:" . join(",", map {"user$_"} (1 .. 135))."\n"' \
>> /etc/group
cd /var/db
make
getent -s db group
After the fix, the last command should list the "large" group.
The magic number 135 has been chosen so that the line is shorter than
1024 bytes, but the pointers required to encode the member array will
cross the threshold, triggering the bug.
diff --git a/ChangeLog b/ChangeLog
index ad5d881..ce6f8a2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2016-03-29 Florian Weimer <fweimer@redhat.com>
+
+ [BZ #19837]
+ * nss/nss_db/db-XXX.c (_nss_db_getENTNAME_r): Propagate ERANGE
+ error if parse_line fails.
+
2016-03-28 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/x86/cpu-features.h (bit_cpu_ERMS): New.
diff --git a/nss/nss_db/db-XXX.c b/nss/nss_db/db-XXX.c
index 03c18d7..125a5e9 100644
--- a/nss/nss_db/db-XXX.c
+++ b/nss/nss_db/db-XXX.c
@@ -288,8 +288,8 @@ CONCAT(_nss_db_get,ENTNAME_r) (struct STRUCTURE *result, char *buffer,
}
if (err < 0)
{
- H_ERRNO_SET (HOST_NOT_FOUND);
- status = NSS_STATUS_NOTFOUND;
+ H_ERRNO_SET (NETDB_INTERNAL);
+ status = NSS_STATUS_TRYAGAIN;
break;
}
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 6 ++++++
nss/nss_db/db-XXX.c | 4 ++--
2 files changed, 8 insertions(+), 2 deletions(-)
hooks/post-receive
--
GNU C Library master sources