about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--nscd/nscd_helper.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index dc58bf1960..0563a751d5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,11 @@
 2017-10-01  H.J. Lu  <hongjiu.lu@intel.com>
 
 	[BZ #18822]
+	* nscd/nscd_helper.c (__nis_hash): New prototype.
+
+2017-10-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+	[BZ #18822]
 	* include/termios.h (__tcgetattr): Add libc_hidden_proto.
 	* sysdeps/unix/bsd/tcgetattr.c (__tcgetattr): Add
 	libc_hidden_def.
diff --git a/nscd/nscd_helper.c b/nscd/nscd_helper.c
index a225623f92..56e6d1421f 100644
--- a/nscd/nscd_helper.c
+++ b/nscd/nscd_helper.c
@@ -443,6 +443,11 @@ __nscd_get_map_ref (request_type type, const char *name,
 #define MINIMUM_HASHENTRY_SIZE \
   (offsetof (struct hashentry, dellist) + sizeof (int32_t))
 
+/* __nis_hash is defined in nis_hash.c which is included both libnsl
+   and libc.  Since the one in libnsl is exported and the one in libc
+   is hidden, __nis_hash is marked as hidden where it is referenced,
+   not where it is defined.  */
+extern __typeof (__nis_hash) __nis_hash attribute_hidden;
 
 /* Don't return const struct datahead *, as eventhough the record
    is normally constant, it can change arbitrarily during nscd