From 87020fc869011b409b8eab0c2de835ac17dbd61a3ebf970e5bb73f5024a8620f Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sat, 24 May 2014 14:38:26 +0000 Subject: [PATCH 1/2] Add 0001-BUILD-Link-libsss_ldap_common.so-to-libsss_idmap.so.patch OBS-URL: https://build.opensuse.org/package/show/network:ldap/sssd?expand=0&rev=115 --- ...ss_ldap_common.so-to-libsss_idmap.so.patch | 48 +++++++++++++++++++ ...-detect-endianness-at-configure-time.patch | 15 +++--- sssd.changes | 8 ++++ sssd.spec | 3 +- 4 files changed, 64 insertions(+), 10 deletions(-) create mode 100644 0001-BUILD-Link-libsss_ldap_common.so-to-libsss_idmap.so.patch diff --git a/0001-BUILD-Link-libsss_ldap_common.so-to-libsss_idmap.so.patch b/0001-BUILD-Link-libsss_ldap_common.so-to-libsss_idmap.so.patch new file mode 100644 index 0000000..b739f47 --- /dev/null +++ b/0001-BUILD-Link-libsss_ldap_common.so-to-libsss_idmap.so.patch @@ -0,0 +1,48 @@ +From 7fc27c7a3ccbb6aecb8cf4a4a5f91962028cb897 Mon Sep 17 00:00:00 2001 +From: Lukas Slebodnik +Date: Mon, 17 Mar 2014 09:07:56 +0100 +Subject: [PATCH] BUILD: Link libsss_ldap_common.so to libsss_idmap.so + +Library libsss_ldap.so does not directly use functions from library +libsss_idmap.so. It only call function sdap_idmap_init (from file sdap_idmap.c) +which is in library libsss_ldap_common.so + +sh-4.2$ nm -D --undefined-only /usr/lib64/sssd/libsss_ldap.so | grep idmap + U sdap_idmap_init + +On the other hand, libsss_ldap_common.so uses functions from libsss_idmap +but it was not linked to libsss_idmap.so. + +sh-4.2$ objdump -p /usr/lib64/sssd/libsss_ldap_common.so | grep idmap +sh-4.2$ echo $? +1 + +Reviewed-by: Jakub Hrozek +Reviewed-by: Simo Sorce +--- + Makefile.am | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +Index: sssd-1.11.5.1/Makefile.am +=================================================================== +--- sssd-1.11.5.1.orig/Makefile.am ++++ sssd-1.11.5.1/Makefile.am +@@ -1618,6 +1618,8 @@ libsss_ldap_common_la_SOURCES = \ + src/providers/ldap/sdap_dyndns.c \ + src/providers/ldap/sdap_refresh.c \ + src/providers/ldap/sdap.c ++libsss_ldap_common_la_LIBADD = \ ++ libsss_idmap.la + libsss_ldap_common_la_LDFLAGS = \ + -avoid-version + +@@ -1675,8 +1677,7 @@ libsss_ldap_la_LIBADD = \ + $(OPENLDAP_LIBS) \ + $(DHASH_LIBS) \ + $(KRB5_LIBS) \ +- libsss_ldap_common.la \ +- libsss_idmap.la ++ libsss_ldap_common.la + libsss_ldap_la_LDFLAGS = \ + -avoid-version \ + -module diff --git a/0001-build-detect-endianness-at-configure-time.patch b/0001-build-detect-endianness-at-configure-time.patch index 6b37a3c..86c37fd 100644 --- a/0001-build-detect-endianness-at-configure-time.patch +++ b/0001-build-detect-endianness-at-configure-time.patch @@ -8,14 +8,14 @@ Samba. See Samba's byteorder.h header for an example. Signed-off-by: David Disseldorp --- - configure.ac | 7 +++++++ + configure.ac | 7 +++++++ 1 file changed, 7 insertions(+) -diff --git configure.ac configure.ac -index eb7e376..3ed8e69 100644 ---- configure.ac -+++ configure.ac -@@ -309,6 +309,13 @@ AM_CHECK_CMOCKA +Index: sssd-1.11.5.1/configure.ac +=================================================================== +--- sssd-1.11.5.1.orig/configure.ac ++++ sssd-1.11.5.1/configure.ac +@@ -301,6 +301,13 @@ AM_CHECK_CMOCKA AM_CONDITIONAL([HAVE_DEVSHM], [test -d /dev/shm]) @@ -29,6 +29,3 @@ index eb7e376..3ed8e69 100644 abs_build_dir=`pwd` AC_DEFINE_UNQUOTED([ABS_BUILD_DIR], ["$abs_build_dir"], [Absolute path to the build directory]) AC_SUBST([abs_builddir], $abs_build_dir) --- -1.8.4.5 - diff --git a/sssd.changes b/sssd.changes index c116e68..f225628 100644 --- a/sssd.changes +++ b/sssd.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Sat May 24 14:36:43 UTC 2014 - jengelh@inai.de + +- Redo 0001-build-detect-endianness-at-configure-time.patch to be -p1 +- Add 0001-BUILD-Link-libsss_ldap_common.so-to-libsss_idmap.so.patch + to resolve runtime loading problems + (http://lists.opensuse.org/opensuse-factory/2014-05/msg00181.html ) + ------------------------------------------------------------------- Tue May 13 11:11:59 UTC 2014 - varkoly@suse.com diff --git a/sssd.spec b/sssd.spec index df67553..337915c 100644 --- a/sssd.spec +++ b/sssd.spec @@ -31,6 +31,7 @@ Source3: baselibs.conf Source4: sssd.service BuildRoot: %{_tmppath}/%{name}-%{version}-build Patch1: 0001-build-detect-endianness-at-configure-time.patch +Patch2: 0001-BUILD-Link-libsss_ldap_common.so-to-libsss_idmap.so.patch %define servicename sssd %define sssdstatedir %_localstatedir/lib/sss @@ -286,7 +287,7 @@ Security Services Daemon (sssd). %prep %{?gpg_verify: %gpg_verify %{S:2}} %setup -q -%patch1 -p0 +%patch -P 1 -P 2 -p1 %build %if 0%{?suse_version} < 1210 From bb58307ee89f73a5f72f85cc40faa6189fa1fc50539e3731030f16dbd0a31918 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Tue, 27 May 2014 17:40:18 +0000 Subject: [PATCH 2/2] Accepting request 235577 from home:elvigia:branches:network:ldap - Switch to libnl-3 so we can get rid of libnl-1. OBS-URL: https://build.opensuse.org/request/show/235577 OBS-URL: https://build.opensuse.org/package/show/network:ldap/sssd?expand=0&rev=116 --- sssd.changes | 5 +++++ sssd.spec | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/sssd.changes b/sssd.changes index f225628..d4077e6 100644 --- a/sssd.changes +++ b/sssd.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Tue May 27 16:56:42 UTC 2014 - crrodriguez@opensuse.org + +- Switch to libnl-3 so we can get rid of libnl-1. + ------------------------------------------------------------------- Sat May 24 14:36:43 UTC 2014 - jengelh@inai.de diff --git a/sssd.spec b/sssd.spec index 337915c..5d1fa88 100644 --- a/sssd.spec +++ b/sssd.spec @@ -61,7 +61,8 @@ BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(ini_config) >= 0.6.1 BuildRequires: pkgconfig(ldb) >= 0.9.2 BuildRequires: pkgconfig(libcares) -BuildRequires: pkgconfig(libnl-1) >= 1.1 +BuildRequires: pkgconfig(libnl-3.0) >= 3.0 +BuildRequires: pkgconfig(libnl-route-3.0) >= 3.0 BuildRequires: pkgconfig(libpcre) >= 7 BuildRequires: pkgconfig(ndr_nbt) BuildRequires: pkgconfig(openssl)