aboutsummaryrefslogtreecommitdiff
path: root/nss
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@linux-m68k.org>2018-03-02 23:07:14 +0100
committerAndreas Schwab <schwab@linux-m68k.org>2018-03-03 17:44:24 +0100
commiteaf6753f8aac33a36deb98c1031d1bad7b593d2d (patch)
tree383a694e8b1bac27466d4742207f55598bab5d27 /nss
parent4dc23804a220f917f400e2404bc4803cd60491c7 (diff)
downloadglibc-eaf6753f8aac33a36deb98c1031d1bad7b593d2d.zip
glibc-eaf6753f8aac33a36deb98c1031d1bad7b593d2d.tar.gz
glibc-eaf6753f8aac33a36deb98c1031d1bad7b593d2d.tar.bz2
Fix multiple definitions of __nss_*_database (bug 22918)
Diffstat (limited to 'nss')
-rw-r--r--nss/nsswitch.c2
-rw-r--r--nss/nsswitch.h8
2 files changed, 5 insertions, 5 deletions
diff --git a/nss/nsswitch.c b/nss/nsswitch.c
index 4b8deed..ee46f24 100644
--- a/nss/nsswitch.c
+++ b/nss/nsswitch.c
@@ -62,7 +62,7 @@ static service_library *nss_new_service (name_database *database,
/* Declare external database variables. */
#define DEFINE_DATABASE(name) \
- extern service_user *__nss_##name##_database attribute_hidden; \
+ service_user *__nss_##name##_database attribute_hidden; \
weak_extern (__nss_##name##_database)
#include "databases.def"
#undef DEFINE_DATABASE
diff --git a/nss/nsswitch.h b/nss/nsswitch.h
index eccb535..63573b9 100644
--- a/nss/nsswitch.h
+++ b/nss/nsswitch.h
@@ -226,10 +226,10 @@ libc_hidden_proto (__nss_hostname_digits_dots)
#define MAX_NR_ADDRS 48
/* Prototypes for __nss_*_lookup2 functions. */
-#define DEFINE_DATABASE(arg) \
- service_user *__nss_##arg##_database attribute_hidden; \
- int __nss_##arg##_lookup2 (service_user **, const char *, \
- const char *, void **); \
+#define DEFINE_DATABASE(arg) \
+ extern service_user *__nss_##arg##_database attribute_hidden; \
+ int __nss_##arg##_lookup2 (service_user **, const char *, \
+ const char *, void **); \
libc_hidden_proto (__nss_##arg##_lookup2)
#include "databases.def"
#undef DEFINE_DATABASE