public inbox for libc-hacker@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] Make /etc/default/nss reading errno preserving
@ 2007-07-03 13:20 Jakub Jelinek
  0 siblings, 0 replies; only message in thread
From: Jakub Jelinek @ 2007-07-03 13:20 UTC (permalink / raw)
  To: Ulrich Drepper; +Cc: Glibc hackers

Hi!

_nsl_default_nss is called indirectly even from functions which should
preserve errno in certain cases (e.g. getpwent if it returns NULL
should only set errno in case of error).  But presence of /etc/default/nss
or lack thereof should not be considered an error.

2007-07-03  Jakub Jelinek  <jakub@redhat.com>

	[BZ #4702]
	* nis/nss-default.c: Include errno.h.
	(init): Preserve errno.

--- libc/nis/nss-default.c.jj	2006-04-28 23:03:17.000000000 +0200
+++ libc/nis/nss-default.c	2007-07-03 14:59:57.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 2001, 2004, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 2001, 2004, 2006, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -17,6 +17,7 @@
    02111-1307 USA.  */
 
 #include <ctype.h>
+#include <errno.h>
 #include <stdio.h>
 #include <stdio_ext.h>
 #include <stdlib.h>
@@ -54,6 +55,7 @@ static const struct
 static void
 init (void)
 {
+  int saved_errno = errno;
   FILE *fp = fopen (default_nss, "rc");
   if (fp != NULL)
     {
@@ -111,6 +113,7 @@ init (void)
 
       fclose (fp);
     }
+  __set_errno (saved_errno);
 }
 
 

	Jakub

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-07-03 13:20 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-07-03 13:20 [PATCH] Make /etc/default/nss reading errno preserving Jakub Jelinek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).