about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--nss/nss_files/files-parse.c8
2 files changed, 9 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index ae467b6a16..61840805d6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,8 +1,8 @@
 2004-10-25  Roland McGrath  <roland@redhat.com>
 
 	* nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define to
-	libnss_files_hidden_def, not hidden_def.  This file is also compiled
-	into libnss_hesiod by #include.
+	either libc_hidden_def or libnss_files_hidden_def, not hidden_def.
+	This file is also compiled into libnss_hesiod by #include.
 
 2004-10-25  Roland McGrath  <roland@frob.com>
 
diff --git a/nss/nss_files/files-parse.c b/nss/nss_files/files-parse.c
index 21f689d0f1..3ba37c8941 100644
--- a/nss/nss_files/files-parse.c
+++ b/nss/nss_files/files-parse.c
@@ -73,7 +73,13 @@ struct parser_data
 /* Export the line parser function so it can be used in nss_db.  */
 # define parser_stclass /* Global */
 # define parse_line CONCAT(_nss_files_parse_,ENTNAME)
-# define nss_files_parse_hidden_def(name) libnss_files_hidden_def (name)
+# ifdef IS_IN_libc
+/* We are defining one of the functions that actually lives in libc
+   because it is used to implement fget*ent and suchlike.  */
+#  define nss_files_parse_hidden_def(name) libc_hidden_def (name)
+# else
+#  define nss_files_parse_hidden_def(name) libnss_files_hidden_def (name)
+# endif
 #endif