[PATCH] files-hosts fix for to small buffer

Thorsten Kukuk kukuk@suse.de
Wed Nov 21 04:28:00 GMT 2001


Hi,

If you have one alias for a lot of entries in /etc/hosts or very 
long lines, the current glibc version will fail. Reason: files-hosts.
from libnss_files runs out of buffer space, but does not set all
variables, so it will never be called with a bigger buffer. Appended
patch fixes this problem.

  Thorsten
-- 
Thorsten Kukuk       http://www.suse.de/~kukuk/        kukuk@suse.de
SuSE GmbH            Deutschherrenstr. 15-19       D-90429 Nuernberg
--------------------------------------------------------------------    
Key fingerprint = A368 676B 5E1B 3E46 CFCE  2D97 F8FD 4E23 56C6 FB4B
-------------- next part --------------
2001-11-22  Thorsten Kukuk  <kukuk@suse.de>

	* nss/nss_files/files-hosts.c (_nss_files_get##name##_r): Set 
	herrnop to NETDB_INTERNAL if we run out of buffer space.

--- nss/nss_files/files-hosts.c
+++ nss/nss_files/files-hosts.c	2001/11/22 13:16:24
@@ -173,6 +173,7 @@
 		      >= buffer + buflen)				      \
 		    {							      \
 		      *errnop = ERANGE;					      \
+		      *herrnop = NETDB_INTERNAL;			      \
 		      status = NSS_STATUS_TRYAGAIN;			      \
 		      break;						      \
 		    }							      \


More information about the Libc-hacker mailing list