From 0d599550f99b98dba5223f29c76cc1056b53e401dc8db6e95b0c6ac89940df6d Mon Sep 17 00:00:00 2001 From: Samuel Cabrero Date: Tue, 2 Jul 2024 16:20:36 +0000 Subject: [PATCH] Accepting request 1183857 from home:npower:branches:network:samba:STABLE OBS-URL: https://build.opensuse.org/request/show/1183857 OBS-URL: https://build.opensuse.org/package/show/network:samba:STABLE/ldb?expand=0&rev=181 --- .gitattributes | 23 + .gitignore | 1 + baselibs.conf | 3 + ldb-2.9.1.tar.asc | 11 + ldb-2.9.1.tar.gz | 3 + ldb-python3.5-fix-soabi_name.patch | 12 + ldb.changes | 761 +++++++++++++++++++++++++++++ ldb.keyring | 70 +++ ldb.spec | 256 ++++++++++ 9 files changed, 1140 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 baselibs.conf create mode 100644 ldb-2.9.1.tar.asc create mode 100644 ldb-2.9.1.tar.gz create mode 100644 ldb-python3.5-fix-soabi_name.patch create mode 100644 ldb.changes create mode 100644 ldb.keyring create mode 100644 ldb.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/baselibs.conf b/baselibs.conf new file mode 100644 index 0000000..db2d70b --- /dev/null +++ b/baselibs.conf @@ -0,0 +1,3 @@ +libldb2 + obsoletes "libldb1- < " +python3-ldb diff --git a/ldb-2.9.1.tar.asc b/ldb-2.9.1.tar.asc new file mode 100644 index 0000000..12d68c0 --- /dev/null +++ b/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/ldb-2.9.1.tar.gz b/ldb-2.9.1.tar.gz new file mode 100644 index 0000000..2e55549 --- /dev/null +++ b/ldb-2.9.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c95e4dc32dea8864b79899ee340c9fdf28b486f464bbc38ba99151a08b493f9b +size 1752372 diff --git a/ldb-python3.5-fix-soabi_name.patch b/ldb-python3.5-fix-soabi_name.patch new file mode 100644 index 0000000..2d6bc32 --- /dev/null +++ b/ldb-python3.5-fix-soabi_name.patch @@ -0,0 +1,12 @@ +diff -ruNp a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py +--- a/buildtools/wafsamba/wafsamba.py 2024-05-16 13:52:58.561283248 +0200 ++++ b/buildtools/wafsamba/wafsamba.py 2024-05-16 13:54:32.297195397 +0200 +@@ -309,7 +309,7 @@ def SAMBA_LIBRARY(bld, libname, source, + if bundled_name is not None: + pass + elif target_type == 'PYTHON' or realname or not private_library: +- bundled_name = libname.replace('_', '-') ++ bundled_name = libname + else: + assert (private_library is True and realname is None) + bundled_name = PRIVATE_NAME(bld, libname.replace('_', '-')) diff --git a/ldb.changes b/ldb.changes new file mode 100644 index 0000000..3f8f8a7 --- /dev/null +++ b/ldb.changes @@ -0,0 +1,761 @@ +------------------------------------------------------------------- +Fri Jun 28 10:25:19 UTC 2024 - Noel Power + +- Update to 2.9.1 + * Many qsort() comparison functions are non-transitive, which + can lead to out-of-bounds access in some circumstances; + (bso#15569). + +------------------------------------------------------------------- +Thu May 16 11:34:15 UTC 2024 - Samuel Cabrero + +- Update to 2.9.0 + * documentation fixes + * build with Python 3.12 (bso#15513) + * a lot of additional error checking in the python bindings + * minor code fixes + * Update patch ldb-python3.5-fix-soabi_name.patch + +------------------------------------------------------------------- +Tue Sep 26 09:52:58 UTC 2023 - Noel Power + +- Update to 2.8.0 + * CVE-2023-0614 Not-secret but access controlled LDAP attributes can be discovered (bug 15270) + * pyldb: Raise an exception if ldb_dn_get_parent() fails + * Implement ldap_whoami in pyldb and add the RFC4532 LDB_EXTENDED_WHOAMI_OID definition + * Documentation and spelling fixes + * Add ldb_val -> bool,uint64,int64 parsing functions + * Split out ldb_val_as_dn() helper function + * add LDB_CHANGETYPE_MODRDN support to ldb_ldif_to_pyobject() + * add LDB_CHANGETYPE_DELETE support to ldb_ldif_to_pyobject() + * let ldb_ldif_parse_modrdn() handle names without 'rdn_name=' prefix + * Don't create error string if there is no error + * Avoid allocation and memcpy() for every wildcard match candidate + * Make ldb_msg_remove_attr O(n) + * pyldb: Throw error on invalid controls + * pyldb: remove py2 ifdefs + * Call tevent_set_max_debug_level(TEVENT_DEBUG_TRACE) + +------------------------------------------------------------------- +Wed Mar 29 15:28:03 UTC 2023 - Noel Power + +- CVE-2023-0614: Access controlled AD LDAP attributes can be + discovered (bso#15270); (bsc#1209485). + +------------------------------------------------------------------- +Fri Mar 17 08:05:30 UTC 2023 - Samuel Cabrero + +- Update to 2.7.1 + * Build fix for Solaris, after removal of tevent ports backend + (bso#15298) +- Changes from 2.7.0 + * Support python 3.12 + * Have python functions operating on DNs raise LdbError + * Don't call comparison() directly in LDB_TYPESAFE_QSORT + * Use ldb_ascii_toupper() for case folding to support + tr_TR.UTF-8 and other dotless i locales (bso#15248) + +------------------------------------------------------------------- +Mon Mar 13 10:25:56 UTC 2023 - Noel Power + +- Update to version 2.7.1 + - Build fix for Solaris, after removal of tevent ports + backend (bso#15298). +- Update to version 2.7.0 + - Support python 3.12 + * Have python functions operating on DNs raise LdbError + * don't call comparison() directly in LDB_TYPESAFE_QSORT + * Use ldb_ascii_toupper() for case folding to support + tr_TR.UTF-8 and other dotless i locales; (bso#15248). + +------------------------------------------------------------------- +Thu Sep 22 15:55:29 UTC 2022 - Noel Power + +- Update to version 2.6.1 + + CVE-2022-32746 Use-after-free occurring in database audit + logging module; (bso#15009); (bsc#1201490); + +- Update to version 2.6.0 + + ldb: bump version to 2.6.0 for Samba 4.17.x releases + +------------------------------------------------------------------- +Mon Aug 1 08:52:16 UTC 2022 - Samuel Cabrero + +- Update to version 2.5.2; + + CVE-2022-32746: Use-after-free occurring in database audit + logging module; (bso#15009); (bsc#1201490); + +------------------------------------------------------------------- +Thu Jun 16 14:34:18 UTC 2022 - Samuel Cabrero + +- Update to version 2.5.1 + + Fix build problems; (bso#15071); + +------------------------------------------------------------------- +Tue Mar 22 12:24:56 UTC 2022 - Samuel Cabrero + +- Update to version 2.5.0 + + No code changes, just bump version for samba 4.16.0 release + +------------------------------------------------------------------- +Thu Feb 24 19:03:56 UTC 2022 - Ferdinand Thiessen + +- Update to version 2.4.2 + + Fix for CVE-2021-3670, ensure that the LDB request has not + timed out during filter processing as the LDAP server + MaxQueryDuration is otherwise not honoured. + +------------------------------------------------------------------- +Tue Jan 11 10:08:31 UTC 2022 - Samuel Cabrero + +- Modify packaging to allow parallel installation with libldb1 + (bsc#1192684): + + Private libraries are installed in %{_libdir}/ldb2/ + + Modules are installed in %{_libdir}/ldb2/modules + +------------------------------------------------------------------- +Wed Nov 10 10:51:16 UTC 2021 - Samuel Cabrero + +- Update to version 2.4.1 + + Corrected python behaviour for 'in' for LDAP attributes + contained as part of ldb.Message; (bso#14845); + + Fix memory handling in ldb.msg_diff; (bso#14836); + + Corrected python docstrings + +------------------------------------------------------------------- +Fri Sep 17 09:04:13 UTC 2021 - Samuel Cabrero + +- Update to version 2.4.0 + + Improve calculate_popt_array_length() + + Use C99 initializers for builtin_popt_options[] + + pyldb: Fix Message.items() for a message containing elements + + pyldb: Add test for Message.items() + + tests: Use ldbsearch '--scope instead of '-s' + + pyldb: fix a typo + + Change page size of guidindexpackv1.ldb + + Use a 1MiB lmdb so the test also passes on aarch64 CentOS stream + + attrib_handler casefold: simplify space dropping + + fix ldb_comparison_fold off-by-one overrun + + CVE-2020-27840: pytests: move Dn.validate test to ldb + + CVE-2020-27840 ldb_dn: avoid head corruption in ldb_dn_explode + + CVE-2021-20277 ldb/attrib_handlers casefold: stay in bounds + + CVE-2021-20277 ldb tests: ldb_match tests with extra spaces + + improve comments for ldb_module_connect_backend() + + test/ldb_tdb: correct introductory comments + + ldb.h: remove undefined async_ctx function signatures + + correct comments in attrib_handers val_to_int64 + + dn tests use cmocka print functions + + ldb_match: remove redundant check + + add tests for ldb_wildcard_compare + + ldb_match: trailing chunk must match end of string + + pyldb: catch potential overflow error in py_timestring + + ldb: remove some 'if PY3's in tests + + Add missing break in switch statement + +------------------------------------------------------------------- +Wed Mar 31 15:36:54 UTC 2021 - Samuel Cabrero + +- Update to ldb 2.3.0 + +------------------------------------------------------------------- +Wed Mar 24 09:53:56 UTC 2021 - Noel Power + +- Release ldb 2.2.1 + + CVE-2020-27840: samba: Unauthenticated remote heap corruption + via bad DNs; (bso#14595); (bsc#1183572). + + CVE-2021-20277: samba: out of bounds read in ldb_handler_fold; + (bso#14655); (bsc#1183574). + +------------------------------------------------------------------- +Mon Oct 12 15:28:18 UTC 2020 - Dominique Leuenberger + +- Remove old if suse_version != 1110 || arch != i386 construct: + unlikely the current package ever builds for 1110 && 386. + +------------------------------------------------------------------- +Fri Sep 11 10:04:24 UTC 2020 - David Disseldorp + +- Release ldb 2.2.0 + + Fix memory leak in ldb_kv_index_dn_ordered(); (bso#14299) + + Fix off-by-one increment in lldb_add_msg_attr; (bso#14413) + +------------------------------------------------------------------- +Fri Jul 3 13:15:48 UTC 2020 - Noel Power + +- Release ldb 2.1.4 + + CVE-2020-10730: NULL de-reference in AD DC LDAP server when + ASQ and VLV combined; (bso#14364); (bsc#1173159) + +------------------------------------------------------------------- +Wed May 20 14:05:18 UTC 2020 - David Mulder + +ldb: Bump version to 2.1.3; (bso#14330) + +------------------------------------------------------------------- +Tue Apr 28 17:06:24 UTC 2020 - Noel Power + +- Release ldb 2.1.2 + + CVE-2020-10700: ldb: Always use ldb_next_request() in + ASQ module; ;(bso#14331); (bsc#1169850). + +------------------------------------------------------------------- +Fri Mar 6 16:38:37 UTC 2020 - Noel Power + +- Release ldb 2.1.1 + + Samba 4.11 and later give incorrect results for SCOPE_ONE + searches; (bso#14270). + +------------------------------------------------------------------- +Wed Jan 22 17:28:23 UTC 2020 - David Mulder + +ldb: Release ldb 2.0.8 + + Upgrade waf to version 2.0.18 to match the rest of Samba 4.11.x + (bso#13846) + +------------------------------------------------------------------- +Fri Jan 17 16:43:19 UTC 2020 - David Mulder + +- libldb1 fails to migrate to libldb2 when libldb2 version is less + than libldb1 version; (bsc#1160341) + +------------------------------------------------------------------- +Thu Dec 19 09:46:41 UTC 2019 - Noel Power + +- Add obsolete ldb1 directive to baselibs.conf + +------------------------------------------------------------------- +Thu Oct 03 22:08:14 UTC 2019 - James McDonough + +- Update to version 2.0.7 + + Robustness improvements against duplicate attributes in ldb_filter_attrs() + (bso#13695) + + Robustness improvements against invalid string DN values (bso#14049) + + log database repack so users know what is happening (bso#14059) + + add ldb_options_get + + add "batch_mode" option. + + Remove Python 2.x support except to build just the bare C library + + Remove --extra-python (a build time mode to produce Python2 and Python3 + bindings at the same time) + + Fix standalone build of ldb. + + CVE-2019-3824 out of bounds read in wildcard compare (bso#13773) + +------------------------------------------------------------------- +Thu Aug 1 10:57:34 UTC 2019 - Samuel Cabrero + +- Update to 1.5.5 + + LDAP_REFERRAL_SCHEME_OPAQUE was added to ldb_module.h; (bso#12478); + + Skip @ records early in a search full scan; (bso#13893); + +------------------------------------------------------------------- +Tue Mar 5 16:30:16 UTC 2019 - David Mulder + +- Update to 1.5.4 + + Fix standalone build of ldb. + + C99 build fixes. + + CVE-2019-3824 out of bounds read in wildcard compare (bug#13773) +- Update to 1.5.3 + + Avoid inefficient one-level searches (bug#13762) + + The test api.py should not rely on order of entries in dict (bug#13772) + +------------------------------------------------------------------- +Wed Feb 6 17:40:31 UTC 2019 - David Mulder + +- Update to 1.5.2 + + dirsync: Allow arbitrary length cookies (bug #13686) + + The build uses python3 by default: --extra-python would take + python2 now + + To build with python2 only use: + PYTHON=python2 ./configure + PYTHON=python2 make + PYTHON=python2 make install + +------------------------------------------------------------------- +Mon Nov 12 17:33:03 UTC 2018 - Samuel Cabrero + +- Update to 1.4.3 + + Python: Ensure ldb.Dn can accept utf8 encoded unicode (bug 13616) + +------------------------------------------------------------------- +Tue Sep 25 07:35:57 UTC 2018 - Samuel Cabrero + +- Update license to LGPL-3.0 + +------------------------------------------------------------------- +Fri Aug 17 15:21:40 UTC 2018 - dmulder@suse.com + +- Update to 1.4.2 + + Security fix for CVE-2018-1140 (NULL pointer de-reference, bug 13374) + + Fix memory leaks and missing error checks (bug 13459, 13471, 13475) +- 1.4.1 + + add some missing return value checks + + Fix several mem leaks in ldb_index ldb_search ldb_tdb (bug#13475) + + ldb_tdb: Use mem_ctx and so avoid leak onto long-term memory + on duplicated add. (bug#13471) + + ldb: Fix memory leak on module context (bug#13459) + + Refused build of Samba 4.8 with ldb 1.4 (bug #13519) + + Prevent similar issues in the future at configure time (bug #13519) +- 1.4.0 + + New LMDB backend (experimental) + + Comprehensive tests for index behaviour + + Enforce transactions for writes + + Enforce read lock use for all reads + + Fix memory leak in paged_results module. + We hold at most 10 outstanding paged result cookies + (bug #13362) + + Fix compiler warnings + + Python3 improvements + + Restore --disable-python build + + Fix for performance regression on one-level searches + (bug #13448) + + Samba's subtree_rename could fail to rename some entries + (bug #13452) + +------------------------------------------------------------------- +Wed Aug 15 21:52:13 UTC 2018 - dmulder@suse.com + +- Add fix_ldb_mod_op_test.patch: Fix missing NULL terminator in + ldb_mod_op_test testsuite + +------------------------------------------------------------------- +Tue Aug 14 20:35:30 UTC 2018 - dmulder@suse.com + +- Update to 1.3.5 + + Security fix for CVE-2018-1140 (NULL pointer de-reference, + bug #13374). +- 1.3.4 + + Fix memory leaks and missing error checks (bug #13459, #13471, + #13475). + + Fix fallback to full scan (performance regression) on + one-level search (bug #13448). + + Fix read corruption (missing results) during writes, + particularly during a Samba subtree rename (bug #13452). + +------------------------------------------------------------------- +Wed May 23 10:36:02 UTC 2018 - jmcdonough@suse.com + +- Update to 1.3.3 + + Fix failure to upgrade to the GUID index DB format; (bso#13306). + +------------------------------------------------------------------- +Fri Mar 16 19:09:53 UTC 2018 - jmcdonough@suse.com + +- Update to 1.3.2; + + Expose the SHOW_BINARY, ENABLE_TRACING and DONT_CREATE_DB flag + constants in the python api. + + Don't load LDB_MODULESDIR as a module file. + + Fix binary data in debug log (bug #13185). + + Intersect the index from SCOPE_ONELEVEL with the index for the + search expression (bso#13191) + + GUID Index support. + +------------------------------------------------------------------- +Fri Feb 9 12:04:23 UTC 2018 - scabrero@suse.com + +- Update to 1.2.3; (bsc#1080545); + + Performance regression in DNS server with introduction of DNS wildcard; + (bso#13191); + +------------------------------------------------------------------- +Mon Oct 2 12:18:30 UTC 2017 - jengelh@inai.de + +- Remove %if guards for blocks that do not affect the build result. + Fix RPM groups and summaries. + Drop very old SUSE support. Replace old RPM macros by new + constructs. + +------------------------------------------------------------------- +Mon Sep 18 12:17:31 UTC 2017 - scabrero@suse.com + +- Update to 1.2.2 + + Bug #13017: Add ldb_ldif_message_redacted_string() to allow debug + of redacted log messages, avoiding showing secret values + + + Bug #13015: Allow re-index of newer databases with binary GUID TDB keys + (this officially removes support for re-index of the original + pack format 0, rather than simply segfaulting). + + Avoid memory allocation and so make modify of records in ldb_tdb faster + +------------------------------------------------------------------- +Wed Jul 26 09:18:14 UTC 2017 - scabrero@suse.com + +- Update to 1.2.1 + + Bug #12882: Do not install _ldb_text.py if we have system libldb + + Use libraries from build dir for testsuite + + Bug #12900: Fix index out of bound in ldb_msg_find_common_values + +------------------------------------------------------------------- +Wed Jul 5 09:05:46 UTC 2017 - scabrero@suse.com + +- Update to 1.2.0 + + handle one more LDB_FLAG_INTERNAL_DISABLE_SINGLE_VALUE_CHECK + case in ldb_tdb + + fix ldb_tdb locking (performance) problems + + fix ldb_tdb search inconsistencies by adding + read_[un]lock() hooks to the module stack + (bug #12858) + + add cmocka based tests for the locking issues + + ldb_version.h provides LDB_VERSION_{MAJOR,MINOR,RELEASE} defines + + protect ldb_modules.h from being used by Samba < 4.7 + Note: that this release (as well as 1.1.30 and 1.1.31) + may cause problems for older applications, e.g. Samba + See https://bugzilla.samba.org/show_bug.cgi?id=12859 + +------------------------------------------------------------------- +Mon Jul 3 08:16:32 UTC 2017 - scabrero@suse.com + +- Update to 1.1.31 + + let ldbdump parse the -i option + + don't allow the reveal_internals control for ldbedit + + only allow --show-binary for ldbsearch + + don't let ldbsearch create non-existing files + + fix ldb_tdb search inconsistencies + + add cmocka based tests + + provide an interface for improved indexing for callers + like Samba, which will allow much better performance. + + Makes ldb access to tdb:// databases use a private event context + rather than the global event context passed in by the caller. + This is because running other operations while locks are held + or a search is being conducted is not safe. + + Add efficient function to find duplicate values in ldb messages + (this makes large multi-valued attributes in ldb_tdb more efficient) +- Add ldb-tests-do-not-override-lib-path.patch: Check if LD_LIBRARY_PATH + and LDB_MODULES_PATH environment variables are set before overriding + them. + +------------------------------------------------------------------- +Tue Jan 24 17:44:38 UTC 2017 - ddiss@suse.com + +- Update to 1.1.29; (bsc#1032915). + + add support for LDB_CONTROL_RECALCULATE_RDN_OID on ldb_modify() + + Performance and memory consumption improvements + +------------------------------------------------------------------- +Wed Sep 14 14:20:29 UTC 2016 - jmcdonough@suse.com + +- Update to 1.1.27 + + performance improvements + + VLV control improvements + +------------------------------------------------------------------- +Tue Mar 15 16:40:29 UTC 2016 - lmuelle@suse.com + +- Require talloc 2.1.6 at build-time; (bsc#954658). + +------------------------------------------------------------------- +Tue Mar 8 12:49:48 UTC 2016 - dimstar@opensuse.org + +- Add ldb-python3.5-fix-soabi_name.patch: Do not change x86_64 to + x86-64 when building with python 3.5. + +------------------------------------------------------------------- +Sun Feb 21 16:55:27 UTC 2016 - lmuelle@suse.com + +- Avoid a file collision for non SUSE build targets; (bsc#966174). + +------------------------------------------------------------------- +Wed Feb 17 18:04:54 UTC 2016 - lmuelle@suse.com + +- Update to 1.1.26; (bsc#954658). + + let a timeout of -1 indicate no timeout for a given request + + fix memory leaks in pyldb ldb.search() + + build fixes + + improve pyldb ldb.search() help message + + add pyldb ldb.search_iterator() api + + add LDB_ATTR_FLAG_FORCE_BASE64_LDIF as optional argument + to ldb_schema_attribute_add() + + add client support for LDB_CONTROL_DIRSYNC_EX + +------------------------------------------------------------------- +Fri Feb 12 17:13:00 UTC 2016 - lmuelle@suse.com + +- Provide python-ldb and python-ldb-devel; (bsc#966523). + +------------------------------------------------------------------- +Wed Jan 27 13:35:11 UTC 2016 - lmuelle@suse.com + +- Update to 1.1.25; (bsc#954658). + + torture: test ldb_unpack_data_only_attr_list + + increment version due to added ldb_unpack_data_only_attr_list + + introduce ldb_unpack_data_withlist to unpack partial list of attributes + +------------------------------------------------------------------- +Thu Dec 10 16:10:32 UTC 2015 - lmuelle@suse.com + +- Update to 1.1.24. + + fix LDAP \00 search expression attack DoS; CVE-2015-3223; (bso#11325) + + fix remote read memory exploit in LDB; CVE-2015-5330; (bso#11599) + + move ldb_(un)pack_data into ldb_module.h for testing + + fix installation of _ldb_text.py + + fix propagation of LDB errors through TDB + + fix bug triggered by having an empty message in database during search + +------------------------------------------------------------------- +Wed Nov 11 17:53:45 UTC 2015 - lmuelle@suse.com + +- Update to 1.1.23; (bsc#954658). + + Test improvements + + Improved python3 bindings; (bsc#951911) + + Minor build fixes + +------------------------------------------------------------------- +Fri Oct 30 13:15:15 UTC 2015 - lmuelle@suse.com + +- Add doxygen at build time to add the development documentation. +- Disable rpath-install and silent-rules while configure. + +------------------------------------------------------------------- +Thu Oct 22 20:52:14 UTC 2015 - lmuelle@suse.com + +- Rename pyldb to python-ldb. + +------------------------------------------------------------------- +Mon Sep 7 21:55:16 UTC 2015 - lmuelle@suse.com + +- Move the ldb-cmdline library to the ldb-tools package as the packaged + binaries depend on it. + +------------------------------------------------------------------- +Mon Sep 7 17:06:26 UTC 2015 - lmuelle@suse.com + +- Update the Samba Library Distribution Key file 'ldb.keyring'; (bso#945116). + +------------------------------------------------------------------- +Wed Jul 22 07:37:48 UTC 2015 - lmuelle@suse.com + +- Update to 1.1.21; (bsc#939050). + + build fixes + + improved python bindings + +------------------------------------------------------------------- +Sun Mar 1 13:35:05 UTC 2015 - lmuelle@suse.com + +- Update to 1.1.20. + + validate_ldb of String(Generalized-Time) does not accept millisecond + format ".000Z"; (bso#9810) + + fix logic in ldb_val_to_time() + +------------------------------------------------------------------- +Tue Jan 13 14:57:29 UTC 2015 - lmuelle@suse.com + +- Update to 1.1.19. + + Allow to register extended match rules + +------------------------------------------------------------------- +Sun Dec 21 20:23:19 UTC 2014 - lmuelle@suse.com + +- Update to 1.1.18. + + fixes for segfaults in pyldb + + documentation fixes + + build system improvements + + fix a typo in the comment, LDB_FLAGS_MOD_xxx -> LDB_FLAG_MOD_xxx + + Fix check for third_party + + make the successful ldb_transaction_start() message clearer + + ldb-samba: fix a memory leak in ldif_canonicalise_objectCategory() + + ldb-samba: Move pyldb-utils dependency to python_samba__ldb + + build: improve detection of srcdir + +------------------------------------------------------------------- +Thu Nov 6 13:24:43 UTC 2014 - lmuelle@suse.com + +- Use the upstream tar ball, as signature verification is now able to handle + compressed archives. + +------------------------------------------------------------------- +Tue Oct 28 14:41:43 UTC 2014 - lmuelle@suse.com + +- Remove dependency on gpg-offline as signature checking is implemented in the + source validator. + +------------------------------------------------------------------- +Tue Sep 23 18:10:04 UTC 2014 - lmuelle@suse.com + +- BuildRequire docbook-xsl-stylesheets and libxslt to process the man pages. + +------------------------------------------------------------------- +Fri May 23 15:39:36 UTC 2014 - lmuelle@suse.com + +- Require pkg-config from the devel sub packages and do not BuildRequire it + from libldb. + +------------------------------------------------------------------- +Mon May 5 11:38:58 UTC 2014 - lmuelle@suse.com + +- Update to 1.1.17. + + pyldb: add some more helper functions for LdbDn + + pyldb: fix doc string for set_extended_component() + + pyldb: add some const to PyObject_FromLdbValue() + + Add a env variable to disable RTLD_DEEPBIND. + + ldb_ildap: Map some wrong username/password errors on to + LDB_ERR_INVALID_CREDENTIALS + + pass module init errors back to the caller + + Return LDB_ERR_INSUFFICIENT_ACCESS_RIGHTS rather than OPERATIONS_ERROR on + EACCES and EPERM + + Fix 1138330 Dereference null return value + + bad if test in ldb_comparison_fold() + + use of NULL pointer bugfix + + Fix CID 241329 Array compared against 0 + + Fix CID 240798 Uninitialized pointer read + + rdn_name: reject 'distinguishedName' depending of the MOD flags + + Show the type of failing operation in default error message + + Do not build libldb-cmdline when using system ldb. + + ldb_map: Fix CID 1034791 Dereference null return value + + Fix a const warning + +------------------------------------------------------------------- +Fri Dec 6 11:56:46 UTC 2013 - lmuelle@suse.com + +- Verify source tar ball gpg signature. + +------------------------------------------------------------------- +Thu Aug 29 10:43:09 UTC 2013 - lmuelle@suse.com + +- Consolidate python files in independent pyldb subpackages. +- Add pyldb to baselibs.conf. + +------------------------------------------------------------------- +Tue Jul 2 10:31:06 UTC 2013 - lmuelle@suse.com + +- Update to 1.1.16. + + Bump version to allow a depencency on the substring crash fix. + + Cope with substring match with no chunks in ldb_filter_from_tree(). + + Ensure not to segfault on a filter such as (mail=). + + Add missing dependency on replace for ldb. + + Add more data test data for one level test cases. + + Add tests for the python api. + + Add more tests related to onelevel search. + + Use strncmp instead of strcmp when comparing the val part. + + Make test output more readable. + +------------------------------------------------------------------- +Wed Feb 6 10:50:24 UTC 2013 - lmuelle@suse.com + +- Update to 1.1.15. + + Ensure to decrement the transaction_active whenever we delete + a transaction. + + Move doxygen comments for ldb_connect to the right place. + +------------------------------------------------------------------- +Sun Dec 2 16:56:45 UTC 2012 - lmuelle@suse.com + +- Update to 1.1.14. + + fixed callers for ldb_pack_data() and ldb_unpack_data() + + move ldb_pack.c into common + + Add ldbdump, based on tdbdump + + Remove no-longer-existing ltdb_unpack_data_free from ldb_tdb.h + + Change ltdb_unpack_data to take an ldb_context +- Update to 1.1.13. + + Don't use "isprint" in ldb_binary_encode(); (bso#9147). + +------------------------------------------------------------------- +Mon Sep 3 09:59:26 UTC 2012 - lmuelle@suse.com + +- Update to 1.1.12. + + Avoid printing secret attributes in ldb trace logs + +------------------------------------------------------------------- +Thu Aug 30 16:03:16 UTC 2012 - lmuelle@suse.com + +- Update to 1.1.11. + + LDB:ldb_tdb.c - deny multi-valued attributes manipulation with doublets + + LDB:ldbsearch - add search filter tests + + LDB:ldbsearch - search filters do not only contain "=" + + lib/ldb: Use tdb_parse_record and a callback rather than tdb_fetch() +- BuildRequire tevent version >= 0.9.17. + +------------------------------------------------------------------- +Thu Aug 16 09:46:57 UTC 2012 - lmuelle@suse.com + +- Remove superfluous ldb-tools rpmlintrc file. + +------------------------------------------------------------------- +Thu Aug 9 18:06:08 UTC 2012 - lmuelle@suse.com + +- Update to 1.1.10. + + Enhancements and fixes to the s3 read, sesssetup, and server functions + + s3: Fix a crash in reply_lockingX_error + + s3:libsmb, smbd, and s4:libcli: add EXTENDED_SIGNATURE support in tcon + + s3:rpc_server: make usage of session_extract_session_key() + + s3:smb2_*: make use of SMBD_SMB2_*() + + s4 and libcli: enahncements and fixes + +------------------------------------------------------------------- +Tue Aug 7 22:18:19 UTC 2012 - lmuelle@suse.com + +- Update to 1.1.9. + + Ensure rename target does not exist before deleting old record. + + Add parameter to avoid NULL format string flagged by -Werror=format. +- Update to 1.1.8. + + Fixes for pyldb. + + Drop support for tdb_compat. +- BuildRequire pytalloc-devel. + +------------------------------------------------------------------- +Thu Jun 28 16:29:25 UTC 2012 - lmuelle@suse.com + +- Disable rpath while configure. + +------------------------------------------------------------------- +Wed Jun 13 14:16:37 UTC 2012 - ddiss@suse.com + +- Tag GPL-3.0+ based on tdb license; (bnc#765270). + +------------------------------------------------------------------- +Sun Jun 3 21:18:46 UTC 2012 - lmuelle@suse.com + +- Define library name and use it instead of libldb1. + +------------------------------------------------------------------- +Sun Jun 3 14:03:09 UTC 2012 - lmuelle@suse.com + +- Add missing post, postun, and files part to the libldb1 package. + +------------------------------------------------------------------- +Sat Jun 2 16:00:14 UTC 2012 - lmuelle@suse.com + +- Rename package to ldb and add an independent libldb1 subpackage. +- Enhance and polish the package descriptions and summaries. + +------------------------------------------------------------------- +Fri Jun 1 15:27:26 UTC 2012 - lmuelle@suse.com + +- BuildIgnore libtalloc to prevent a package conflict on Fedora systems. + +------------------------------------------------------------------- +Fri Jun 1 14:59:53 UTC 2012 - lmuelle@suse.com + +- BuildRequire popt-devel. + +------------------------------------------------------------------- +Thu May 31 22:22:49 UTC 2012 - lmuelle@suse.com + +- Define and use talloc, tdb, and tevent version macros. +- Define python_sitearch if undefined. + +------------------------------------------------------------------- +Thu May 31 13:46:42 UTC 2012 - lmuelle@suse.com + +- BuildRequire libtalloc-devel, libtdb-devel, and libtevent-devel. +- Configure with bundled tdb2 library. + +------------------------------------------------------------------- +Fri May 25 11:12:36 UTC 2012 - lmuelle@suse.com + +- Cleanup BuildRequires and spec file in general. + +------------------------------------------------------------------- +Thu May 17 12:44:28 UTC 2012 - lmuelle@suse.com + +- BuildRequire libtalloc2-devel >= 2.0.7. + +------------------------------------------------------------------- +Mon May 14 15:18:49 UTC 2012 - lmuelle@suse.com + +- BuildRequire libtalloc2-devel, libtdb1-devel, and libtevent0-devel. +- Adjust license string. +- Require libldb1 = %{version} from the devel package. + +------------------------------------------------------------------- +Wed Sep 7 21:56:42 UTC 2011 - lars@samba.org + +- Initial independent libldb1 package. + diff --git a/ldb.keyring b/ldb.keyring new file mode 100644 index 0000000..0404526 --- /dev/null +++ b/ldb.keyring @@ -0,0 +1,70 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v2 + +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 +T5Q= +=9mzF +-----END PGP PUBLIC KEY BLOCK----- diff --git a/ldb.spec b/ldb.spec new file mode 100644 index 0000000..bd0c71b --- /dev/null +++ b/ldb.spec @@ -0,0 +1,256 @@ +# +# spec file for package ldb +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%{!?py3_soflags: %global py3_soflags cpython-%{python3_version_nodots}m} +%{!?py3_soflags_dash: %global py3_soflags_dash %(echo %{py3_soflags} | sed "s/_/-/g")} + +%global with_lmdb 0 +%if 0%{?suse_version} > 1320 +%ifarch x86_64 +%global with_lmdb 1 +%endif +%endif + +%define lmdb_version 0.9.16 +%define talloc_version 2.4.2 +%define tdb_version 1.4.10 +%define tevent_version 0.16.1 + +Name: ldb +BuildRequires: docbook-xsl-stylesheets +BuildRequires: doxygen +%if 0%{?suse_version} > 1500 +%ifnarch ppc +BuildRequires: libcmocka-devel >= 1.1.3 +%endif +%endif +BuildRequires: libtalloc-devel >= %{talloc_version} +BuildRequires: libtdb-devel >= %{tdb_version} +BuildRequires: libtevent-devel >= %{tevent_version} +BuildRequires: libxslt +BuildRequires: popt-devel +BuildRequires: python3-devel +BuildRequires: python3-talloc >= %{talloc_version} +BuildRequires: python3-talloc-devel >= %{talloc_version} +BuildRequires: python3-tdb >= %{tdb_version} +BuildRequires: python3-tevent >= %{tevent_version} +%if 0%{?suse_version} >= 1330 +BuildRequires: libtirpc-devel +%endif +%if %{with_lmdb} +BuildRequires: lmdb-devel >= %{lmdb_version} +%endif + +URL: https://ldb.samba.org/ +Version: 2.9.1 +Release: 0 +Summary: An LDAP-like embedded database +License: LGPL-3.0-or-later +Group: Development/Libraries/C and C++ +Source: https://download.samba.org/pub/ldb/ldb-%{version}.tar.gz +Source1: https://download.samba.org/pub/ldb/ldb-%{version}.tar.asc +Source2: ldb.keyring +Source4: baselibs.conf +Patch0: ldb-python3.5-fix-soabi_name.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +%description +LDB is an LDAP-like embedded database. + +%package -n libldb2 +Summary: An LDAP-like embedded database +Group: System/Libraries +Obsoletes: libldb1 < %{version} + +%description -n libldb2 +LDB is an LDAP-like embedded database. + +This package includes the ldb2 library. + +%package -n libldb-devel +Summary: Libraries and Header Files to Develop Programs with ldb2 Support +Group: Development/Libraries/C and C++ +Requires: libldb2 = %{version} +Requires: pkg-config + +%description -n libldb-devel +LDB is an LDAP-like embedded database. + +Libraries and Header Files to Develop Programs with ldb2 Support. + +%package -n ldb-tools +Summary: Tools to manipulate LDB files +Group: Development/Libraries/C and C++ + +%description -n ldb-tools +Tools to manipulate LDB files. + +%package -n python3-ldb +Summary: Python3 bindings for the LDB library +Group: Development/Libraries/Python +Requires: libldb2 = %{version} +Obsoletes: python-ldb + +%description -n python3-ldb +This package contains the python3 bindings for the LDB library. + +%package -n python3-ldb-devel +Summary: Development files for the Python3 bindings for the LDB library +Group: Development/Libraries/Python +Requires: pkg-config +Requires: python3-ldb = %{version} +Obsoletes: python-ldb-devel + +%description -n python3-ldb-devel +This package contains the development files for the Python bindings for the +LDB library. + +%prep +%setup -n ldb-%{version} -q +%autopatch -p1 + +%build +%if 0%{?suse_version} > 1110 + export SUSE_ASNEEDED=0 +%endif +export CFLAGS="%{optflags} -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -DIDMAP_RID_SUPPORT_TRUSTED_DOMAINS" +%define bundled_libs cmocka +%if 0%{?suse_version} > 1500 +%ifnarch ppc + %define bundled_libs NONE +%endif +%endif + +export CFLAGS="%{optflags} -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -DIDMAP_RID_SUPPORT_TRUSTED_DOMAINS" +CONFIGURE_OPTIONS="\ + --prefix=%{_prefix} \ + --libdir=%{_libdir} \ + --disable-rpath \ + --disable-rpath-install \ + --disable-silent-rules \ + --with-modulesdir=%{_libdir}/ldb2/modules \ + --with-privatelibdir=%{_libdir}/ldb2 \ + --bundled-libraries=%{bundled_libs} \ + --builtin-libraries=replace \ +%if !%{with_lmdb} + --without-ldb-lmdb \ +%endif +" +./configure ${CONFIGURE_OPTIONS} +make %{?_smp_mflags} \ + all +doxygen Doxyfile +# remove man page with bogus full build dir in path +rm -f apidocs/man/man3/_*_ldb-%{version}_include_.3 + +%check +%if %{with_lmdb} +LD_LIBRARY_PATH="bin/shared:bin/shared/private" \ +LDB_MODULES_PATH="bin/modules" \ +make test +%endif + +%install +%make_install + +# Install API documentation +cp -a apidocs/man/* %{buildroot}/%{_mandir} + +sed -i 's;-lpyldb-util.%{py3_soflags_dash};-lpyldb-util.%{py3_soflags};g' %{buildroot}/%{_libdir}/pkgconfig/pyldb-util.%{py3_soflags}.pc + +%post -n libldb2 -p /sbin/ldconfig + +%postun -n libldb2 -p /sbin/ldconfig + +%post -n python3-ldb -p /sbin/ldconfig + +%postun -n python3-ldb -p /sbin/ldconfig + +%files -n libldb2 +%defattr(-,root,root) +%{_libdir}/libldb.so.2* +%dir %{_libdir}/ldb2 +%{_libdir}/ldb2/libldb-key-value.so +%{_libdir}/ldb2/libldb-tdb-err-map.so +%{_libdir}/ldb2/libldb-tdb-int.so +%dir %{_libdir}/ldb2/modules +%dir %{_libdir}/ldb2/modules/ldb +%{_libdir}/ldb2/modules/ldb/asq.so +%{_libdir}/ldb2/modules/ldb/paged_searches.so +%{_libdir}/ldb2/modules/ldb/rdn_name.so +%{_libdir}/ldb2/modules/ldb/sample.so +%{_libdir}/ldb2/modules/ldb/server_sort.so +%{_libdir}/ldb2/modules/ldb/skel.so +%{_libdir}/ldb2/modules/ldb/tdb.so +%{_libdir}/ldb2/modules/ldb/ldb.so +%if 0%{?suse_version} <= 1500 +%{_libdir}/ldb2/libcmocka-ldb.so +%endif +%ifarch ppc +%{_libdir}/ldb2/libcmocka-ldb.so +%endif +%if %{with_lmdb} +%{_libdir}/ldb2/libldb-mdb-int.so +%{_libdir}/ldb2/modules/ldb/mdb.so +%endif + +%files -n libldb-devel +%defattr(-,root,root) +%{_includedir}/ldb.h +%{_includedir}/ldb_errors.h +%{_includedir}/ldb_handlers.h +%{_includedir}/ldb_module.h +%{_includedir}/ldb_version.h +%{_libdir}/libldb.so +%{_libdir}/pkgconfig/ldb.pc +%{_mandir}/man3/ldb*.3.* +%{_mandir}/man3/ldif*.3.* + +%files -n ldb-tools +%defattr(-,root,root) +%{_bindir}/ldbadd +%{_bindir}/ldbdel +%{_bindir}/ldbedit +%{_bindir}/ldbmodify +%{_bindir}/ldbrename +%{_bindir}/ldbsearch +%{_libdir}/ldb2/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 -n python3-ldb +%defattr(-,root,root) +%{_libdir}/libpyldb-util.%{py3_soflags}.so.* +%{python3_sitearch}/_ldb_text.py +%if 0%{?centos_version} > 599 || 0%{?fedora_version} > 11 || 0%{?rhel_version} > 599 +%{python3_sitearch}/__pycache__/_ldb_text.cpython-*.py[co] +%endif +%{python3_sitearch}/ldb.%{py3_soflags}.so + +%files -n python3-ldb-devel +%defattr(-,root,root) +%{_includedir}/pyldb.h +%{_libdir}/libpyldb-util.%{py3_soflags}.so +%{_libdir}/pkgconfig/pyldb-util.%{py3_soflags}.pc +%{_mandir}/man3/PyLdb*.3.* + +%changelog