[sssd] - Add support for libldb 1.0.0

Stephen Gallagher sgallagh at fedoraproject.org
Fri Feb 11 14:37:15 UTC 2011


commit e8ab291d8930432b1497db7f76e804571bb47056
Author: Stephen Gallagher <sgallagh at redhat.com>
Date:   Fri Feb 11 09:36:41 2011 -0500

    - Add support for libldb 1.0.0

 ...ule-registration-with-newer-LDB-libraries.patch |   62 +++++++++++++
 0003-Make-make-check-look-nice-again.patch         |   95 ++++++++++++++++++++
 sssd.spec                                          |   12 ++-
 3 files changed, 166 insertions(+), 3 deletions(-)
---
diff --git a/0002-Fix-module-registration-with-newer-LDB-libraries.patch b/0002-Fix-module-registration-with-newer-LDB-libraries.patch
new file mode 100644
index 0000000..970b63a
--- /dev/null
+++ b/0002-Fix-module-registration-with-newer-LDB-libraries.patch
@@ -0,0 +1,62 @@
+From 23e8d84320ae8b76d244764c02e44036e96cd4df Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher <sgallagh at redhat.com>
+Date: Wed, 9 Feb 2011 15:50:07 -0500
+Subject: [PATCH 1/2] Fix module registration with newer LDB libraries.
+
+---
+ Makefile.am                |    1 +
+ src/ldb_modules/memberof.c |   15 ++++++++++++++-
+ 2 files changed, 15 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 49520f3..cc78d04 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -637,6 +637,7 @@ auth_tests_SOURCES = \
+     $(SSSD_UTIL_OBJ)
+ auth_tests_CFLAGS = \
+     $(AM_CFLAGS) \
++    -DSYSDB_TEST \
+     $(CHECK_CFLAGS)
+ auth_tests_LDADD = \
+     $(SSSD_LIBS) \
+diff --git a/src/ldb_modules/memberof.c b/src/ldb_modules/memberof.c
+index 311e7e5..55c52fd 100644
+--- a/src/ldb_modules/memberof.c
++++ b/src/ldb_modules/memberof.c
+@@ -1,7 +1,7 @@
+ /*
+    SSSD memberof module
+ 
+-   Copyright (C) Simo Sorce <idra at samba.org> 2008
++   Copyright (C) Simo Sorce <idra at samba.org> 2008-2011
+ 
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+@@ -17,6 +17,11 @@
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+ 
++/* Temporary workaround, will be fixed in ldb upstream soon */
++#ifndef LDB_VERSION
++#define LDB_VERSION "0.9.22"
++#endif
++
+ #include <string.h>
+ #include "ldb_module.h"
+ #include "util/util.h"
+@@ -3623,3 +3628,11 @@ const struct ldb_module_ops ldb_memberof_module_ops = {
+     .modify = memberof_mod,
+     .del = memberof_del,
+ };
++
++int ldb_init_module(const char *version)
++{
++#ifdef LDB_MODULE_CHECK_VERSION
++    LDB_MODULE_CHECK_VERSION(version);
++#endif
++    return ldb_register_module(&ldb_memberof_module_ops);
++}
+-- 
+1.7.4
+
diff --git a/0003-Make-make-check-look-nice-again.patch b/0003-Make-make-check-look-nice-again.patch
new file mode 100644
index 0000000..62de250
--- /dev/null
+++ b/0003-Make-make-check-look-nice-again.patch
@@ -0,0 +1,95 @@
+From 21f28bdbab10881b9fb0b890dfa15af429326606 Mon Sep 17 00:00:00 2001
+From: Sumit Bose <sbose at redhat.com>
+Date: Fri, 11 Feb 2011 12:57:30 +0100
+Subject: [PATCH 2/2] Make 'make check' look nice again
+
+With current libldb releases 'make check' will print a lot of 'unable to
+dlopen' messages although the test will succeed. This patch place the
+memberof module into a directory of its own to avoid these messages.
+
+Additionally this patch introduces TESTS_ENVIRONMENT which allows us to
+remove the SYSDB_TEST preprocessor definition.
+---
+ Makefile.am    |   11 ++++++++---
+ src/db/sysdb.c |    8 --------
+ 2 files changed, 8 insertions(+), 11 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index cc78d04..b445f9c 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -478,6 +478,12 @@ sss_groupshow_LDADD = \
+ #################
+ # Feature Tests #
+ #################
++TESTS_ENVIRONMENT = LDB_MODULES_PATH=$(abs_top_builddir)/ldb_mod_test_dir
++
++ldb_mod_test_dir: memberof.la
++	mkdir -p $(builddir)/ldb_mod_test_dir
++	cp $(builddir)/.libs/memberof.so $(builddir)/ldb_mod_test_dir
++
+ noinst_LTLIBRARIES += \
+     libsss_test_common.la
+ 
+@@ -494,7 +500,6 @@ sysdb_tests_SOURCES = \
+     src/tests/sysdb-tests.c \
+     $(SSSD_UTIL_OBJ)
+ sysdb_tests_CFLAGS = \
+-    -DSYSDB_TEST \
+     $(AM_CFLAGS) \
+     $(CHECK_CFLAGS)
+ sysdb_tests_LDADD = \
+@@ -637,7 +642,6 @@ auth_tests_SOURCES = \
+     $(SSSD_UTIL_OBJ)
+ auth_tests_CFLAGS = \
+     $(AM_CFLAGS) \
+-    -DSYSDB_TEST \
+     $(CHECK_CFLAGS)
+ auth_tests_LDADD = \
+     $(SSSD_LIBS) \
+@@ -1023,7 +1027,7 @@ docs:
+ 	@exit 1
+ endif
+ 
+-all-local:
++all-local: ldb_mod_test_dir
+ if BUILD_PYTHON_BINDINGS
+ 	cd $(srcdir)/src/config; $(PYTHON) setup.py build --build-base $(abs_builddir)/src/config
+ endif
+@@ -1055,6 +1059,7 @@ if BUILD_PYTHON_BINDINGS
+ 	cd $(srcdir)/src/config; $(PYTHON) setup.py build --build-base $(abs_builddir)/src/config clean --all
+ endif
+ 	rm -Rf doc
++	rm -Rf ldb_mod_test_dir
+ 
+ CLEANFILES = *.X */*.X */*/*.X
+ 
+diff --git a/src/db/sysdb.c b/src/db/sysdb.c
+index 1409149..694ce54 100644
+--- a/src/db/sysdb.c
++++ b/src/db/sysdb.c
+@@ -889,10 +889,6 @@ static int sysdb_check_upgrade_02(TALLOC_CTX *mem_ctx,
+         goto exit;
+     }
+ 
+-#ifdef SYSDB_TEST
+-    ldb_set_modules_dir(ctx->ldb, ABS_BUILD_DIR"/.libs");
+-#endif
+-
+     ret = ldb_connect(ldb, ldb_file, 0, NULL);
+     if (ret != LDB_SUCCESS) {
+         ret = EIO;
+@@ -1563,10 +1559,6 @@ static int sysdb_domain_init_internal(TALLOC_CTX *mem_ctx,
+         return EIO;
+     }
+ 
+-#ifdef SYSDB_TEST
+-    ldb_set_modules_dir(ctx->ldb, ABS_BUILD_DIR"/.libs");
+-#endif
+-
+     ret = ldb_connect(ctx->ldb, ctx->ldb_file, 0, NULL);
+     if (ret != LDB_SUCCESS) {
+         return EIO;
+-- 
+1.7.4
+
diff --git a/sssd.spec b/sssd.spec
index a8e5c11..0e8f8da 100644
--- a/sssd.spec
+++ b/sssd.spec
@@ -5,7 +5,7 @@
 
 Name: sssd
 Version: 1.5.1
-Release: 4%{?dist}
+Release: 5%{?dist}
 Group: Applications/System
 Summary: System Security Services Daemon
 License: GPLv3+
@@ -15,6 +15,8 @@ BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 
 ### Patches ###
 Patch0001: 0001-Sanitize-search-filters-for-nested-group-lookups.patch
+Patch0002: 0002-Fix-module-registration-with-newer-LDB-libraries.patch
+Patch0003: 0003-Make-make-check-look-nice-again.patch
 
 ### Dependencies ###
 
@@ -108,11 +110,12 @@ use with ldap_default_authtok_type = obfuscated_password.
 %prep
 %setup -q
 
-autoreconf -ivf
-
 %patch0001 -p1
+%patch0002 -p1
+%patch0003 -p1
 
 %build
+autoreconf -ivf
 %configure \
     --with-db-path=%{dbpath} \
     --with-pipe-path=%{pipepath} \
@@ -270,6 +273,9 @@ fi
 %postun client -p /sbin/ldconfig
 
 %changelog
+* Fri Feb 11 2011 Stephen Gallagher <sgallagh at redhat.com> - 1.5.1-5
+- Add support for libldb 1.0.0
+
 * Wed Feb 09 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.5.1-4
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
 


More information about the scm-commits mailing list