On Thu, Jun 26, 2014 at 10:31:27AM +0200, Lukas Slebodnik wrote:
I verified with:
nm -D $libname | awk '$2 == "T" {print $3";"}' | sort
that the functions exported by the library match the functions defined
in the version file.
The versions also match the SONAMEs.
One question inline:
From 0779624cf96480fe3b62f5c881fb9b123d24a965 Mon Sep 17 00:00:00
2001
From: Lukas Slebodnik <lslebodn(a)redhat.com>
Date: Mon, 9 Jun 2014 14:38:31 +0200
Subject: [PATCH] BUILD: Add version symbol files for public libraries.
Version symbol files will help package systems to catch backward compatible
changes (newly added functions) into library.
Resolves:
https://fedorahosted.org/sssd/ticket/2194
[...]
new file mode 100644
index 0000000000000000000000000000000000000000..bd3abb211120784494fe366ddd19b94d9b982657
--- /dev/null
+++ b/src/sss_client/idmap/sss_nss_idmap.exports
@@ -0,0 +1,17 @@
+SSS_NSS_IDMAP_0.0.1 {
+
+ # public functions
+ global:
+
+ sss_nss_getsidbyname;
+ sss_nss_getsidbyid;
+ sss_nss_getnamebysid;
+ sss_nss_getidbysid;
+
+ # exported for mocking
I don't think the comment is right. The symbol is exported because
libsss_nss_idmap links with the client code:
740 libsss_nss_idmap_la_SOURCES = \
741 src/sss_client/idmap/sss_nss_idmap.c \
742 src/sss_client/common.c \
743 src/util/strtonum.c
And libsss_nss_idmap uses the function to call out to the NSS responder
(see src/sss_client/idmap/sss_nss_idmap.c:100)
Can we not mark the function as global? It's not part of the sss_nss_idmap's
API.
+ sss_nss_make_request;
+
+ # everything else is local
+ local:
+ *;
+};
--
1.9.3
_______________________________________________
sssd-devel mailing list
sssd-devel(a)lists.fedorahosted.org
https://lists.fedorahosted.org/mailman/listinfo/sssd-devel