chiark / gitweb /
nss-myhostname: only export the NSS entry point symbols, nothing else
authorLennart Poettering <lennart@poettering.net>
Thu, 10 Jul 2014 18:38:07 +0000 (20:38 +0200)
committerLennart Poettering <lennart@poettering.net>
Thu, 10 Jul 2014 18:38:07 +0000 (20:38 +0200)
Makefile.am
src/nss-myhostname/nss-myhostname.sym [new file with mode: 0644]

index 425a5e1..b28fa3f 100644 (file)
@@ -4397,6 +4397,7 @@ endif
 # ------------------------------------------------------------------------------
 if HAVE_MYHOSTNAME
 libnss_myhostname_la_SOURCES = \
+       src/nss-myhostname/nss-myhostname.sym \
        src/nss-myhostname/nss-myhostname.c \
        src/nss-myhostname/addresses.h \
        src/nss-myhostname/addresses.c
@@ -4407,7 +4408,8 @@ libnss_myhostname_la_LDFLAGS = \
        -export-dynamic \
        -avoid-version \
        -shared \
-       -shrext .so.2
+       -shrext .so.2 \
+       -Wl,--version-script=$(top_srcdir)/src/nss-myhostname/nss-myhostname.sym
 
 libnss_myhostname_la_LIBADD = \
        libsystemd-shared.la \
diff --git a/src/nss-myhostname/nss-myhostname.sym b/src/nss-myhostname/nss-myhostname.sym
new file mode 100644 (file)
index 0000000..dcfc2e4
--- /dev/null
@@ -0,0 +1,19 @@
+/***
+  This file is part of systemd.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+***/
+
+{
+global:
+        _nss_myhostname_gethostbyaddr2_r;
+        _nss_myhostname_gethostbyaddr_r;
+        _nss_myhostname_gethostbyname2_r;
+        _nss_myhostname_gethostbyname3_r;
+        _nss_myhostname_gethostbyname4_r;
+        _nss_myhostname_gethostbyname_r;
+local: *;
+};