commit c6fa0d79ae4c6db5b762d9709fb5c271858d0646 Author: MSVSphere Packaging Team Date: Tue Nov 26 17:06:43 2024 +0300 import libldb-2.9.1-5.el10 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..948c848 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +SOURCES/ldb-2.9.1.tar.gz +SOURCES/ldb.keyring diff --git a/.libldb.metadata b/.libldb.metadata new file mode 100644 index 0000000..ed5334f --- /dev/null +++ b/.libldb.metadata @@ -0,0 +1,2 @@ +0a82c6f41d3ada818bf1e258038979ca76def986 SOURCES/ldb-2.9.1.tar.gz +5d2957f5d63a72a6fc196af3e45242f3d321f6cf SOURCES/ldb.keyring diff --git a/SOURCES/ldb-2.9.1.tar.asc b/SOURCES/ldb-2.9.1.tar.asc new file mode 100644 index 0000000..29ac508 --- /dev/null +++ b/SOURCES/ldb-2.9.1.tar.asc @@ -0,0 +1,11 @@ +-----BEGIN PGP SIGNATURE----- + +iQEzBAABCgAdFiEEkUejOXGVGO6QEby1R5ORYRMIQCUFAmZy6sMACgkQR5ORYRMI +QCViOQf/Wo1d05OXbX0hVC1L79cpCCQ6WDui27POHwx0clHhg6rChXtxqNscBsR+ +rvKX2qnnKtrByQdTlORK2/K3ynM/3CV4pCNwoKCxgpfLumrPkTEtyHP9sTVQ37PC +Pm85uIoqedcleahuVLM1w2+Ns1aTrKKrdqjv9eIuGfzU4U7nt5hitUejRiJWis7a +5OurMd1gvUDv5QAgvcQWqgfqZ8lGmDc0QFOMj2aSepU1n9MBSjYrtqBGwB9/DkT8 +OTR0MY4JUe2RKYjK1OhUiJtEhB1PEj3uiLiS1UwZ9jSwUfEhjDFMwUD2KWiZROaF +GFZsqp8zeJaEgYk2soYDqrQMcV/wiw== +=FzI6 +-----END PGP SIGNATURE----- diff --git a/SOURCES/libldb-fix-indexes-performance.patch b/SOURCES/libldb-fix-indexes-performance.patch new file mode 100644 index 0000000..5bae0c9 --- /dev/null +++ b/SOURCES/libldb-fix-indexes-performance.patch @@ -0,0 +1,221 @@ +From 1944fcf4b7e5ab4cf580e17031918ba5f441902b Mon Sep 17 00:00:00 2001 +From: Douglas Bagnall +Date: Wed, 26 Jun 2024 11:05:49 +1200 +Subject: [PATCH 1/2] ldb_kv_index: dn_list load sub transaction can re-use + keys +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +We don't want to modify the original list, but we can reuse the keys +if we treat them as immutable and don't free them. That makes it a lot +quicker if there are many keys (i.e. where an index is useful) and may +sub-transactions. In particular, it avoids O(n²) talloc_memdups. + +A removed comment that says "We have to free the top level index +memory otherwise we would leak", and this will be addressed in the +next commit. + +BUG: https://bugzilla.samba.org/show_bug.cgi?id=15590 + +Signed-off-by: Douglas Bagnall +Reviewed-by: Stefan Metzmacher +(cherry picked from commit 5f0198d69843c864f2b98a7c0c6305ad789a68a0) +--- + lib/ldb/ldb_key_value/ldb_kv_index.c | 96 +++++++++++++++++----------- + 1 file changed, 57 insertions(+), 39 deletions(-) + +diff --git a/lib/ldb/ldb_key_value/ldb_kv_index.c b/lib/ldb/ldb_key_value/ldb_kv_index.c +index 3f1a847f2b6..fed1033f492 100644 +--- a/lib/ldb/ldb_key_value/ldb_kv_index.c ++++ b/lib/ldb/ldb_key_value/ldb_kv_index.c +@@ -446,34 +446,39 @@ static int ldb_kv_dn_list_load(struct ldb_module *module, + * There is an active index sub transaction, and the record was + * found in the primary index transaction cache. A copy of the + * record needs be taken to prevent the original entry being +- * altered, until the index sub transaction is committed. ++ * altered, until the index sub transaction is committed, but we ++ * don't copy the actual values, just the array of struct ldb_val ++ * that points to the values (which are offsets into a GUID array). ++ * ++ * As a reminder, our primary cache is an in-memory tdb that ++ * maps attributes to struct dn_list objects, which point to ++ * the actual index, which is an array of struct ldb_val, the ++ * contents of which are {.data = , .length = ++ * 16}. The array is sorted by GUID data, and these GUIDs are ++ * used to look up index entries in the main database. There ++ * are more layers of indirection than necessary, but what ++ * makes the index useful is we can use a binary search to ++ * find if the array contains a GUID. ++ * ++ * What we do in a sub-transaction is make a copy of the struct ++ * dn_list and the array of struct ldb_val, but *not* of the ++ * .data that they point to. This copy is put into a new ++ * in-memory tdb which masks the primary cache for the duration ++ * of the sub-transaction. ++ * ++ * In an add operation in a sub-transaction, the new ldb_val ++ * is a child of the sub-transaction dn_list, which will ++ * become the main dn_list if the transaction succeeds. ++ * ++ * These acrobatics do not affect read-only operations. + */ +- +- { +- struct ldb_val *dns = NULL; +- size_t x = 0; +- +- dns = talloc_array( +- list, +- struct ldb_val, +- list2->count); +- if (dns == NULL) { +- return LDB_ERR_OPERATIONS_ERROR; +- } +- for (x = 0; x < list2->count; x++) { +- dns[x].length = list2->dn[x].length; +- dns[x].data = talloc_memdup( +- dns, +- list2->dn[x].data, +- list2->dn[x].length); +- if (dns[x].data == NULL) { +- TALLOC_FREE(dns); +- return LDB_ERR_OPERATIONS_ERROR; +- } +- } +- list->dn = dns; +- list->count = list2->count; ++ list->dn = talloc_memdup(list, ++ list2->dn, ++ talloc_get_size(list2->dn)); ++ if (list->dn == NULL) { ++ return LDB_ERR_OPERATIONS_ERROR; + } ++ list->count = list2->count; + return LDB_SUCCESS; + + /* +@@ -3852,9 +3857,7 @@ int ldb_kv_reindex(struct ldb_module *module) + * Copy the contents of the nested transaction index cache record to the + * transaction index cache. + * +- * During this 'commit' of the subtransaction to the main transaction +- * (cache), care must be taken to free any existing index at the top +- * level because otherwise we would leak memory. ++ * This is a 'commit' of the subtransaction to the main transaction cache. + */ + static int ldb_kv_sub_transaction_traverse( + struct tdb_context *tdb, +@@ -3883,8 +3886,7 @@ static int ldb_kv_sub_transaction_traverse( + + /* + * Do we already have an entry in the primary transaction cache +- * If so free it's dn_list and replace it with the dn_list from +- * the secondary cache ++ * If so replace dn_list with the one from the subtransaction. + * + * The TDB and so the fetched rec contains NO DATA, just a + * pointer to data held in memory. +@@ -3897,21 +3899,37 @@ static int ldb_kv_sub_transaction_traverse( + abort(); + } + /* +- * We had this key at the top level. However we made a copy +- * at the sub-transaction level so that we could possibly +- * roll back. We have to free the top level index memory +- * otherwise we would leak ++ * We had this key at the top level, and made a copy ++ * of the dn list for this sub-transaction level that ++ * borrowed the top level GUID data. We can't free the ++ * original dn list just yet. ++ * ++ * In this diagram, ... is the C pointer structure ++ * and --- is the talloc structure (::: is both). ++ * ++ * index_in_top_level ::: dn orig .............. ++ * | | : ++ * | `--GUID array : ++ * | |----- val1 data ++ * ldb_kv `----- val2 data ++ * | : ++ * index_in_subtransaction :: dn copy ..........: ++ * | : ++ * `------------ new val3 data ++ * ++ * So we don't free the index_in_top_level dn list yet, ++ * because we are (probably) borrowing most of its ++ * children. + */ +- if (index_in_top_level->count > 0) { +- TALLOC_FREE(index_in_top_level->dn); +- } + index_in_top_level->dn + = talloc_steal(index_in_top_level, + index_in_subtransaction->dn); + index_in_top_level->count = index_in_subtransaction->count; + return 0; + } +- ++ /* ++ * We found no top level index in the cache, so we put one in. ++ */ + index_in_top_level = talloc(ldb_kv->idxptr, struct dn_list); + if (index_in_top_level == NULL) { + ldb_kv->idxptr->error = LDB_ERR_OPERATIONS_ERROR; +-- +2.46.0 + + +From 70d8b1b2f87cbb16b671d334e46244ba001fbd31 Mon Sep 17 00:00:00 2001 +From: Douglas Bagnall +Date: Mon, 22 Jul 2024 22:22:15 +1200 +Subject: [PATCH 2/2] ldb:kv_index: realloc away old dn list + +We can't just free it, because has the GUID index list as a child, and +these are shared by the new dn list (from the subtransaction we are +committing). But if the dn list is long and the main transaction is +long-lived, we can save a lot of memory by turning this dn list into +an almost empty node in the talloc tree. This returns us to roughly +the situation we had prior to the last commit. + +For example, with the repro.sh script on bug 15590 in indexes mode +with 10000 rules, The last 3 commits use this much memory at the end +of an unusually large transaction: + +full talloc report on 'struct ldb_context' (total 4012222 bytes in 90058 blocks) +full talloc report on 'struct ldb_context' (total 2405482219 bytes in 90058 blocks) +full talloc report on 'struct ldb_context' (total 4282195 bytes in 90058 blocks) + +That is, the last commit increased usage 500 fold, and this commit +brings it back to normal. + +BUG: https://bugzilla.samba.org/show_bug.cgi?id=15590 + +Signed-off-by: Douglas Bagnall +Reviewed-by: Stefan Metzmacher +(cherry picked from commit 1bf9ede94f0a6b41fb18e880e59a8e390f8c21d3) +--- + lib/ldb/ldb_key_value/ldb_kv_index.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/lib/ldb/ldb_key_value/ldb_kv_index.c b/lib/ldb/ldb_key_value/ldb_kv_index.c +index fed1033f492..11bdf00dc08 100644 +--- a/lib/ldb/ldb_key_value/ldb_kv_index.c ++++ b/lib/ldb/ldb_key_value/ldb_kv_index.c +@@ -3919,8 +3919,12 @@ static int ldb_kv_sub_transaction_traverse( + * + * So we don't free the index_in_top_level dn list yet, + * because we are (probably) borrowing most of its +- * children. ++ * children. But we can save memory by discarding the ++ * values and keeping it as an almost empty talloc ++ * node. + */ ++ talloc_realloc(index_in_top_level, ++ index_in_top_level->dn, struct ldb_val *, 1); + index_in_top_level->dn + = talloc_steal(index_in_top_level, + index_in_subtransaction->dn); +-- +2.46.0 + diff --git a/SPECS/libldb.spec b/SPECS/libldb.spec new file mode 100644 index 0000000..3e88a46 --- /dev/null +++ b/SPECS/libldb.spec @@ -0,0 +1,688 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.6.5) +## RPMAUTOSPEC: autorelease, autochangelog +%define autorelease(e:s:pb:n) %{?-p:0.}%{lua: + release_number = 5; + base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); + print(release_number + base_release_number - 1); +}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} +## END: Set by rpmautospec + +# lmdb is not supported on 32 bit architectures +%ifarch aarch64 ppc64le s390x x86_64 +%bcond_without lmdb +%else +%bcond_with lmdb +#endif arch +%endif + +%global talloc_version 2.4.2 +%global tdb_version 1.4.10 +%global tevent_version 0.16.1 + +Name: libldb +Version: 2.9.1 +Release: %autorelease +Summary: A schema-less, ldap like, API and database +Requires: libtalloc%{?_isa} >= %{talloc_version} +Requires: libtdb%{?_isa} >= %{tdb_version} +Requires: libtevent%{?_isa} >= %{tevent_version} +License: LGPL-3.0-or-later +URL: http://ldb.samba.org/ +Source0: https://www.samba.org/ftp/ldb/ldb-%{version}.tar.gz +Source1: https://www.samba.org/ftp/ldb/ldb-%{version}.tar.asc +# gpg2 --no-default-keyring --keyring ./ldb.keyring --recv-keys 9147A339719518EE9011BCB54793916113084025 +Source2: ldb.keyring +Patch0: libldb-fix-indexes-performance.patch + +BuildRequires: docbook-style-xsl +BuildRequires: doxygen +BuildRequires: gcc +BuildRequires: gnupg2 +BuildRequires: libcmocka-devel +BuildRequires: libtalloc-devel >= %{talloc_version} +BuildRequires: libtdb-devel >= %{tdb_version} +BuildRequires: libtevent-devel >= %{tevent_version} +BuildRequires: libxslt +BuildRequires: make +BuildRequires: openldap-devel +BuildRequires: popt-devel +BuildRequires: python3-devel +BuildRequires: python3-talloc-devel +BuildRequires: python3-tdb +BuildRequires: python3-tevent +%if %{with lmdb} +BuildRequires: lmdb-devel >= 0.9.16 +%endif + +Provides: bundled(libreplace) +Obsoletes: python2-ldb < 2.0.5-1 +Obsoletes: python2-ldb-devel < 2.0.5-1 +Obsoletes: pyldb < 1.1.26-2 + + +%description +An extensible library that implements an LDAP like API to access remote LDAP +servers, or use local tdb databases. + +%package -n ldb-tools +Summary: Tools to manage LDB files +Requires: libldb%{?_isa} = %{version}-%{release} + +%description -n ldb-tools +Tools to manage LDB files + +%package devel +Summary: Developer tools for the LDB library +Requires: libldb%{?_isa} = %{version}-%{release} +Requires: libtdb-devel%{?_isa} >= %{tdb_version} +Requires: libtalloc-devel%{?_isa} >= %{talloc_version} +Requires: libtevent-devel%{?_isa} >= %{tevent_version} + +%description devel +Header files needed to develop programs that link against the LDB library. + +%package -n python-ldb-devel-common +Summary: Common development files for the Python bindings for the LDB library + +Provides: pyldb-devel%{?_isa} = %{version}-%{release} +%{?python_provide:%python_provide python2-ldb-devel} + +%description -n python-ldb-devel-common +Development files for the Python bindings for the LDB library. +This package includes files that aren't specific to a Python version. + +%package -n python3-ldb +Summary: Python bindings for the LDB library +Requires: libldb%{?_isa} = %{version}-%{release} +Requires: python3-tdb%{?_isa} >= %{tdb_version} + +%{?python_provide:%python_provide python3-ldb} + +%description -n python3-ldb +Python bindings for the LDB library + +%package -n python3-ldb-devel +Summary: Development files for the Python bindings for the LDB library +Requires: python3-ldb%{?_isa} = %{version}-%{release} +Requires: python-ldb-devel-common%{?_isa} = %{version}-%{release} + +%{?python_provide:%python_provide python3-ldb-devel} + +%description -n python3-ldb-devel +Development files for the Python bindings for the LDB library + +%prep +zcat %{SOURCE0} | gpgv2 --quiet --keyring %{SOURCE2} %{SOURCE1} - +%autosetup -n ldb-%{version} -p3 + +%build +%configure --disable-rpath \ + --disable-rpath-install \ + --bundled-libraries=NONE \ + --builtin-libraries=replace \ + --with-modulesdir=%{_libdir}/ldb/modules \ +%if %{without lmdb} + --without-ldb-lmdb \ +%endif + --with-privatelibdir=%{_libdir}/ldb + +%make_build +doxygen Doxyfile + +%if %{with lmdb} +%check +make %{?_smp_mflags} check +#endif with lmdb +%endif + +%install +%make_install + +# Install API docs +cp -a apidocs/man/* %{buildroot}%{_mandir} + +# bug: remove manpage named after full file path +# not needed with el8+ and fc28+ +rm -f %{buildroot}%{_mandir}/man3/_* + +%files +%dir %{_libdir}/ldb +%{_libdir}/libldb.so.* +%{_libdir}/ldb/libldb-key-value.so +%{_libdir}/ldb/libldb-tdb-err-map.so +%{_libdir}/ldb/libldb-tdb-int.so +%if %{with lmdb} +%{_libdir}/ldb/libldb-mdb-int.so +%endif +%dir %{_libdir}/ldb/modules +%dir %{_libdir}/ldb/modules/ldb +%{_libdir}/ldb/modules/ldb/*.so + +%files -n ldb-tools +%{_bindir}/ldbadd +%{_bindir}/ldbdel +%{_bindir}/ldbedit +%{_bindir}/ldbmodify +%{_bindir}/ldbrename +%{_bindir}/ldbsearch +%{_libdir}/ldb/libldb-cmdline.so +%{_mandir}/man1/ldbadd.1.* +%{_mandir}/man1/ldbdel.1.* +%{_mandir}/man1/ldbedit.1.* +%{_mandir}/man1/ldbmodify.1.* +%{_mandir}/man1/ldbrename.1.* +%{_mandir}/man1/ldbsearch.1.* + +%files devel +%{_includedir}/ldb_module.h +%{_includedir}/ldb_handlers.h +%{_includedir}/ldb_errors.h +%{_includedir}/ldb_version.h +%{_includedir}/ldb.h +%{_libdir}/libldb.so + +%{_libdir}/pkgconfig/ldb.pc +%{_mandir}/man3/ldb*.gz +%{_mandir}/man3/ldif*.gz + +%files -n python-ldb-devel-common +%{_includedir}/pyldb.h +%{_mandir}/man*/Py*.gz + +%files -n python3-ldb +%{python3_sitearch}/ldb.cpython-*.so +%{_libdir}/libpyldb-util.cpython-*.so.2* +%{python3_sitearch}/_ldb_text.py +%{python3_sitearch}/__pycache__/_ldb_text.cpython-*.py* + +%files -n python3-ldb-devel +%{_libdir}/libpyldb-util.cpython-*.so +%{_libdir}/pkgconfig/pyldb-util.cpython-*.pc + +%ldconfig_scriptlets +%ldconfig_scriptlets -n python3-ldb + +%changelog +* Tue Nov 26 2024 MSVSphere Packaging Team - 2.9.1-5 +- Rebuilt for MSVSphere 10 + +## START: Generated by rpmautospec +* Mon Aug 12 2024 Andreas Schneider - 2.9.1-5 +- Fix performance issue with indexes +- resolves: RHEL-53008 + +* Thu Jul 04 2024 Andreas Schneider - 2.9.1-4 +- related: RHEL-33616 - Rebuild package to run tests + +* Wed Jul 03 2024 Andreas Schneider - 2.9.1-3 +- related: RHEL-33616 - Rebuild package + +* Mon Jul 01 2024 Andreas Schneider - 2.9.1-1 +- resolves: RHEL-33616 - Update to version 2.9.1 + +* Mon Jun 24 2024 Troy Dawson - 2.9.0-2 +- Bump release for June 2024 mass rebuild + +* Mon Jan 29 2024 Guenther Deschner - 2.9.0-1 +- rhbz#2260898 - libldb-2.9.0 is available + +* Thu Jan 25 2024 Fedora Release Engineering - 2.8.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 21 2024 Fedora Release Engineering - 2.8.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Aug 07 2023 Guenther Deschner - 2.8.0-1 +- rhbz#2227229 - libldb-2.8.0 is available + +* Thu Jul 20 2023 Fedora Release Engineering - 2.7.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jun 13 2023 Python Maint - 2.7.2-2 +- Rebuilt for Python 3.12 + +* Wed Mar 29 2023 Guenther Deschner - 2.7.2-1 +- rhbz#2182738 - libldb-2.7.2 is available + +* Thu Feb 23 2023 Pavel Filipenský - 2.7.1-1 +- SPDX migration + +* Thu Feb 16 2023 Guenther Deschner - 2.7.1-1 +- rhbz#2167440 - libldb-2.7.1 is available + +* Fri Jan 20 2023 Andreas Schneider - 2.7.0-1 +- Update to version 2.7.0 +- resolves: rhbz#1965818 - Fix ldb on systems with dotted language locale + +* Thu Jan 19 2023 Fedora Release Engineering - 2.6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Mon Aug 08 2022 Guenther Deschner - 2.6.1-1 +- rhbz#2114621 - libldb-2.6.1 is available + +* Wed Jul 27 2022 Andreas Schneider - 2.5.2-2 +- Update to version 2.5.2 +- related: rhbz#2111734 - Fixes CVE-2022-32746 + +* Thu Jul 21 2022 Fedora Release Engineering - 2.5.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Mon Jun 13 2022 Python Maint - 2.5.1-2 +- Rebuilt for Python 3.11 + +* Fri Jun 10 2022 Andreas Schneider - 2.5.1 +- Update to version 2.5.1 + +* Tue Jan 25 2022 Pavel Filipenský - 2.5.0-1 +- rhbz#2044382 - libldb-2.5.0 is available + +* Thu Jan 20 2022 Fedora Release Engineering - 2.4.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Oct 28 2021 Guenther Deschner - 2.4.1-1 +- rhbz#2017790 - libldb-2.4.1 is available + +* Thu Jul 22 2021 Fedora Release Engineering - 2.4.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Thu Jul 15 2021 Guenther Deschner - 2.4.0-1 +- rhbz#1837364 - libldb-2.4.0 is available + +* Fri Jun 04 2021 Python Maint - 2.3.0-3 +- Rebuilt for Python 3.10 + +* Thu May 20 2021 Andreas Schneider - 2.3.0-2 +- Fix tests on aarch64 +- Verify signature in prep state +- resolves: rhbz#1794307 - Build with lmbd support on ppc64le again + +* Wed Mar 24 2021 Lukas Slebodnik - 2.3.0-1 +- libldb-2.3.0 is required for new samba + +* Tue Jan 26 2021 Fedora Release Engineering - 2.2.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Thu Oct 29 2020 Andreas Schneider - 2.2.0-7 +- Fix FTBFS / Increase the over-estimation for sparse files in tests + +* Tue Oct 27 2020 Andreas Schneider - 2.2.0-6 +- Spec file cleanup and improvements + +* Thu Oct 22 2020 Alexander Bokovoy - 2.2.0-5 +- Rebuild for Python 3.9 + +* Tue Jul 28 2020 Fedora Release Engineering - 2.2.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jul 13 2020 Tom Stellard - 2.2.0-3 +- Use make macros +- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro + +* Thu Jul 09 2020 Lukas Slebodnik - 2.2.0-2 +- libldb-2.2.0 is required for samba 4.13rc1 + +* Thu Jul 02 2020 Lukas Slebodnik - 2.1.4-1 +- rhbz#1837364 - libldb-2.1.4 is available + +* Tue May 26 2020 Miro Hrončok - 2.1.3-2 +- Rebuilt for Python 3.9 + +* Wed May 20 2020 Lukas Slebodnik - 2.1.3-1 +- rhbz#1837364 New: libldb-2.1.3 is available + +* Tue Apr 28 2020 Lukas Slebodnik - 2.1.2-1 +- rhbz#1828721 New: libldb-2.1.2 is available + +* Wed Feb 26 2020 Lukas Slebodnik - 2.1.1-1 +- rhbz#1807066 - libldb-2.1.1 is available + +* Wed Jan 29 2020 Fedora Release Engineering - 2.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Wed Jan 22 2020 Lukas Slebodnik - 2.1.0-1 +- rhbz#1748422 - libldb-2.1.0 is available + +* Mon Dec 16 2019 Lukas Slebodnik - 2.0.8-1 +- rhbz#1748422 - libldb-2.0.8 is available + +* Wed Sep 11 2019 Lukas Slebodnik - 2.0.7-1 +- rhbz#1748422 - libldb-2.0.7 is available + +* Tue Sep 03 2019 Lukas Slebodnik - 2.0.6-1 +- rhbz#1748422 - New upstream release 2.0.6 + +* Mon Aug 26 2019 Guenther Deschner - 2.0.5-1 +- rhbz#1683147 - libldb-2.0.5 is available +- rhbz#1737644 - libldb, libtalloc, libtevent, libtdb: Remove Python 2 subpackages from Fedora 31+ + +* Mon Aug 19 2019 Miro Hrončok - 1.5.5-3 +- Rebuilt for Python 3.8 + +* Thu Jul 25 2019 Fedora Release Engineering - 1.5.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sat Jul 13 2019 Guenther Deschner - 1.5.5-1 +- New upstream release 1.5.5 + +* Fri Jun 14 2019 Lukas Slebodnik - 1.5.4-3 +- rhbz#1718113 - samba fail to build with Python 3.8 + AttributeError: module 'time' has no attribute 'clock' + +* Mon Jun 03 2019 Lukas Slebodnik - 1.5.4-2 +- rhbz#1711638 - fails to build with Python 3.8.0a4 + +* Wed Mar 06 2019 Lukas Slebodnik - 1.5.4-1 +- New upstream release 1.5.4 + +* Thu Feb 14 2019 Lukas Slebodnik - 1.5.3-1 +- New upstream release 1.5.3 + +* Fri Feb 01 2019 Fedora Release Engineering - 1.5.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Thu Jan 17 2019 Lukas Slebodnik - 1.5.2-1 +- New upstream release 1.5.2 + +* Thu Nov 8 2018 Lukas Slebodnik - 1.4.3-1 +- New upstream release 1.4.3 + +* Thu Aug 16 2018 Lukas Slebodnik - 1.4.2-1 +- New upstream release 1.4.2 + +* Fri Jul 13 2018 Fedora Release Engineering - 1.4.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Thu Jul 12 2018 Jakub Hrozek - 1.4.1-1 +- New upstream release 1.4.1 +- Apply a patch to hide local ABI symbols to avoid issues with new binutils +- Patch the waf script to explicitly call python2 as "env python" doesn't + yield py2 anymore + +* Tue Jun 19 2018 Miro Hrončok - 1.4.0-2 +- Rebuilt for Python 3.7 + +* Wed May 30 2018 Lukas Slebodnik - 1.4.0-1 +- New upstream release 1.4.0 +- Resolves: rhbz#1584450 - libldb-1.4.0 is available + +* Thu May 3 2018 Jakub Hrozek - 1.3.2-1 +- New upstream release 1.3.3 +- Resolves: rhbz#1574267 - libldb-1.3.3 is available +- Backport a patch from samba upstream to not require rpc.h + +* Thu Mar 01 2018 Lukas Slebodnik - 1.3.2-2 +- Disable link time optimisation for python3 related modules/libs +- Workaround for rhbz#1548822 + +* Thu Mar 01 2018 Lukas Slebodnik - 1.3.2-1 +- New upstream release 1.3.2 +- Resolves: rhbz#1550051 - libldb-1.3.2 is available + +* Mon Feb 26 2018 Lukas Slebodnik - 1.3.1-6 +- Use ldconfig scriptlets +- Add gcc to BuildRequires + +* Sat Feb 24 2018 Florian Weimer - 1.3.1-5 +- Another rebuild with new build flags + +* Sat Feb 24 2018 Florian Weimer - 1.3.1-4 +- Rebuild to pick up new Python build flags + +* Wed Feb 07 2018 Fedora Release Engineering - 1.3.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sat Jan 20 2018 Björn Esser - 1.3.1-2 +- Rebuilt for switch to libxcrypt + +* Sat Jan 13 2018 Lukas Slebodnik - 1.3.1 +- New upstream release 1.3.1 +- Resolves: rhbz#1534128 - libldb-1.3.1 is available + +* Tue Jan 09 2018 Iryna Shcherbina - 1.3.0-4 +- Update Python 2 dependency declarations to new packaging standards + (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) + +* Thu Nov 30 2017 Lukas Slebodnik - 1.3.0-3 +- Update spec file conditionals + +* Sat Oct 21 2017 Lukas Slebodnik - 1.3.0-2 +- Fix memory leak introduced in 1.3.0 + +* Fri Oct 20 2017 Lukas Slebodnik - 1.3.0 +- New upstream release 1.3.0 +- Resolves: rhbz#1504361 - libldb-1.3.0 is available + +* Mon Sep 11 2017 Lukas Slebodnik - 1.2.2 +- New upstream release 1.2.2 +- Resolves: rhbz#1489418 - libldb-1.2.2 is available + +* Thu Aug 03 2017 Fedora Release Engineering - 1.2.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1.2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Mon Jul 24 2017 Lukas Slebodnik - 1.2.1 +- New upstream release 1.2.1 +- Resolves: rhbz#1473988 - libldb-1.2.1 is available + +* Thu Jul 06 2017 Andreas Schneider - 1.2.0-2 +- Fix pyhton3 support + +* Tue Jul 4 2017 Lukas Slebodnik - 1.2.0 +- New upstream release 1.2.0 +- Resolves: rhbz#1467118 - libldb-1.2.0 is available + +* Fri Jun 16 2017 Lukas Slebodnik - 1.1.31-1 +- New upstream release 1.1.31 +- Resolves: rhbz#1462041 - libldb-1.1.31 is available + +* Fri Jun 2 2017 Lukas Slebodnik - 1.1.30-1 +- New upstream release 1.1.30 +- Resolves: rhbz#1458264 - libldb-1.1.30 is available + +* Sat Apr 01 2017 Lukas Slebodnik - 1.1.29-5 +- rhbz#1401172 - Missing symbol versioning provided by libldb.so with strict CFLAGS +- Fix configure time detection with -Werror=implicit-function-declaration + -Werror=implicit-int + +* Fri Feb 10 2017 Fedora Release Engineering - 1.1.29-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Dec 19 2016 Miro Hrončok - 1.1.29-3 +- Rebuild for Python 3.6 + +* Tue Dec 06 2016 Adam Williamson - 1.1.29-2 +- rebuild with reverted redhat-rpm-config to fix missing symbols + +* Fri Dec 2 2016 Jakub Hrozek - 1.1.29-1 +- New upstream release 1.1.29 +- Resolves: rhbz#1400738 - libldb-1.1.29 is available + +* Fri Nov 25 2016 Jakub Hrozek - 1.1.28-1 +- New upstream release 1.1.28 +- Resolves: rhbz#1398307 - libldb-1.1.28 is available + +* Thu Jul 28 2016 Jakub Hrozek - 1.1.27-1 +- New upstream release 1.1.27 +- Resolves: rhbz#1361163 - libldb-1.1.27 is available + +* Thu Jul 21 2016 Lukas Slebodnik - 1.1.26-4 +- rhbz#1358281 - cannot install pyldb + +* Tue Jul 19 2016 Fedora Release Engineering - 1.1.26-3 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Tue Jul 05 2016 Petr Viktorin - 1.1.26-2 +- Package the Python3 bindings + +* Mon Feb 22 2016 Jakub Hrozek - 1.1.26-1 +- New upstream release 1.1.26 + +* Thu Feb 04 2016 Fedora Release Engineering - 1.1.25-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Jan 4 2016 Jakub Hrozek - 1.1.25-1 +- New upstream release 1.1.25 + +* Wed Dec 16 2015 Jakub Hrozek - 1.1.24-1 +- New upstream release 1.1.24 +- Resolves: rhbz#1292070 - CVE-2015-5330 libldb: samba: Remote memory read + in Samba LDAP server [fedora-all] + +* Wed Dec 16 2015 Jakub Hrozek - 1.1.23-2 +- Fix CVE-2015-5330 + +* Thu Nov 12 2015 Jakub Hrozek - 1.1.23-1 +- New upstream release 1.1.23 + +* Tue Aug 25 2015 Andreas Schneider - 1.1.21-1 +- New upstream release 1.1.21 + +* Wed Jun 17 2015 Fedora Release Engineering - 1.1.20-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Wed Jan 28 2015 Jakub Hrozek - 1.1.20-1 +- New upstream release 1.1.20 + +* Mon Jan 5 2015 Jakub Hrozek - 1.1.19-1 +- New upstream release 1.1.19 + +* Fri Dec 5 2014 Jakub Hrozek - 1.1.18-1 +- New upstream release 1.1.18 + +* Sun Aug 17 2014 Fedora Release Engineering - 1.1.17-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 1.1.17-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Tue May 06 2014 Jakub Hrozek - 1.1.17-2 +- Fix the previous changelog entry + +* Tue May 06 2014 Jakub Hrozek - 1.1.17-1 +- New upstream release 1.1.17 + +* Thu Jan 02 2014 Stephen Gallagher - 1.1.16-4 +- Enable building libldb's LDAP interface module + +* Sat Aug 03 2013 Fedora Release Engineering - 1.1.16-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Mon Jul 08 2013 Jakub Hrozek - 1.1.16-2 +- Make the Requires arch-specific + +* Tue Jul 02 2013 - Andreas Schneider - 1.1.16-1 +- New upstream release 1.1.16 + +* Wed Jun 05 2013 Jakub Hrozek - 1.1.15-3 +- Relax pytdb requirement + +* Thu Feb 07 2013 Jakub Hrozek - 1.1.15-2 +- The 1.1.15 rebase obsoletes the patch from 1.1.14-2 + +* Thu Feb 07 2013 Jakub Hrozek - 1.1.15-1 +- New upstream release 1.1.15 + +* Wed Jan 30 2013 Jakub Hrozek - 1.1.14-2 +- Add patch by Stephen Gallagher to include manual pages for + ldb_connect() and several other functions. + +* Sat Dec 01 2012 Jakub Hrozek - 1.1.14-1 +- New upstream release 1.1.14 + +* Wed Oct 03 2012 Jakub Hrozek - 1.1.13-1 +- New upstream release 1.1.13 + +* Mon Sep 03 2012 Jakub Hrozek - 1.1.12-1 +- New upstream release 1.1.12 + +* Tue Aug 28 2012 Jakub Hrozek - 1.1.11-1 +- New upstream release 1.1.11 + +* Fri Aug 10 2012 Jakub Hrozek - 1.1.10-1 +- New upstream release 1.1.10 + +* Thu Aug 02 2012 Stephen Gallagher - 1.1.9-1 +- New upstream release 1.1.9 +- Required for Samba 4 Beta 5 +- Ensure rename target does not exist before deleting old record +- Add parameter to avoid NULL format string flagged by -Werror=format + +* Thu Jul 19 2012 Fedora Release Engineering - 1.1.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Jul 10 2012 Stephen Gallagher - 1.1.8-1 +- New upstream release 1.1.8 +- Required for latest Samba 4 beta +- Fixes for pyldb +- Revert to using tdb1 by default +- Drop support for tdb_compat +- CCAN is no longer built as a static library + +* Tue May 22 2012 Stephen Gallagher - 1.1.6-1 +- New upstream release 1.1.6 +- Drop upstream patches +- Required for upcoming Samba 4 beta +- Explicitly build with tdb1 support + +* Fri Jan 13 2012 Fedora Release Engineering - 1.1.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Fri Dec 09 2011 Stephen Gallagher - 1.1.4-1.1 +- Do not build with multiple CPUs + +* Tue Dec 06 2011 Stephen Gallagher - 1.1.4-1 +- New upstream release +- Add ldb_module_error() routine +- Fedora: work around unreliable configure check for pytevent +- Drop patch to ignore --disable-silent-rules (included in tarball) + +* Thu Dec 01 2011 Stephen Gallagher - 1.1.3-4 +- Add patch to ignore --disable-silent-rules + +* Wed Nov 23 2011 Stephen Gallagher - 1.1.3-3 +- Add explicit mention of the bundled libreplace +- https://fedorahosted.org/fpc/ticket/120 +- Add explicit mention of bundled libtdb_compat and libccan +- https://fedorahosted.org/fpc/ticket/119 + +* Mon Nov 21 2011 Stephen Gallagher - 1.1.3-2 +- Build and install API documentation +- Build tdb_compat and ccan statically. They have no upstream releases to + link against yet and their API is in flux. It is unsafe to make them + public and shared at this time. + +* Wed Nov 09 2011 Stephen Gallagher - 1.1.3-1 +- New upstream release +- Required for building newer samba4 packages + +* Tue Aug 2 2011 Simo Sorce - 1.1.0-1 +- Update to 1.1.0 + (dependency for samba4 alpha16 snapshot) + +* Tue Feb 22 2011 Simo Sorce - 1.0.2-1 +- Update to 1.0.2 + (dependency for samba4 alpha15 snapshot) + +* Fri Feb 11 2011 Stephen Gallagher - 1.0.0-2 +- Disable rpath + +* Fri Feb 11 2011 Stephen Gallagher - 1.0.0-1 +- New upstream release 1.0.0 +- SOname bump to account for module loading changes +- Rename libldb-tools to ldb-tools to make upgrades easier + +* Tue Feb 08 2011 Fedora Release Engineering - 0.9.22-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Fri Feb 04 2011 Stephen Gallagher - 0.9.22-8 +- Fixes from package review +- Change Requires: on tools subpackage to be the exact version/release +- Remove unnecessary BuildRoot directive + +* Mon Jan 17 2011 Stephen Gallagher - 0.9.22-7 +- Update to 0.9.22 (first independent release of libldb upstream) + +## END: Generated by rpmautospec