https://bugs.openldap.org/show_bug.cgi?id=10525
Issue ID: 10525
Summary: back-ldap accepts multiple tls_cert values in
olcDbACLBind
Product: OpenLDAP
Version: 2.6.13
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: backends
Assignee: bugs(a)openldap.org
Reporter: quanah(a)openldap.org
Target Milestone: ---
In examining my slapd configuration, I found it had:
olcDBACLBind: bindmethod=sasl sasl_mech=external
tls_cert=/path/to/home/directory/cert tls_cert=/path/to/real/cert <rest of tls
configuration>
Fortunately it took the second value, so the connections worked, but I would
expect this to generate an error
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=10026
Issue ID: 10026
Summary: Refresh handling can skip entries (si_dirty not
managed properly)
Product: OpenLDAP
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: overlays
Assignee: bugs(a)openldap.org
Reporter: ondra(a)mistotebe.net
Target Milestone: ---
Take MPR plain syncrepl with 3+ providers.
When a provider's own syncrepl session transitions to persist and a it starts a
new parallel session towards another host, that session always has to start as
a refresh. If that refresh serves entries to us, our handling of si_dirty is
not consistent:
- if the existing persist session serves some of these entries to us, we can
"forget" to pass the others to a newly connected consumer
- same if the refresh is abandoned and we start refreshing from a different
provider that might be behind what we were being served (again our consumers
could suffer)
- if we restart, si_dirty is forgotten and our consumers suffer even worse
We might need to be told (at the beginning of the refresh?) what the end state
we're going for is, so we can keep si_dirty on until then. And somehow persist
that knowledge in the DB...
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=10543
Issue ID: 10543
Summary: slapd-read frees the DN pointer array but not the
ldap_get_dn() strings
Product: OpenLDAP
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: test suite
Assignee: bugs(a)openldap.org
Reporter: 1489378385(a)qq.com
Target Milestone: ---
URL:
https://github.com/openldap/openldap/blob/8afcbe9e04f1a40f03cea51c57418b05f…
Description:
Source revision:
8afcbe9e04f1a40f03cea51c57418b05f86e8f44
Affected file:
tests/progs/slapd-read.c
Affected lines:
204-232
Source-level observation:
do_random() allocates the values pointer array with malloc(). It then calls
ldap_get_dn() once for every LDAP search result and stores each independently
allocated DN string in values[i].
After the read loop, the code calls:
free(values);
This releases only the pointer array. It does not release any of the strings
returned by ldap_get_dn().
The ldap_get_dn(3) documentation states that its returned string is dynamically
allocated and should be released with ldap_memfree().
Steps to verify:
1. Build slapd-read with AddressSanitizer or LeakSanitizer.
2. Run it with a search filter so that do_random() is used.
3. Use a search base containing multiple matching entries.
4. Run multiple outer iterations if possible.
5. Allow the tester to exit and inspect the sanitizer report.
Actual result:
One DN string remains allocated for every entry returned by each search batch.
Only the surrounding values array is freed.
Expected result:
Every non-NULL value returned by ldap_get_dn() should be released before the
values array is freed.
Impact:
The leak scales with the number of matching entries and the number of outer
test iterations. Long or repeated test runs can accumulate substantially more
memory than the other three findings.
Validation status:
Confirmed by source review at the revision above. Runtime sanitizer validation
is pending.
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=8064
Quanah Gibson-Mount <quanah(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |VERIFIED
Resolution|TEST |FIXED
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=10473
Issue ID: 10473
Summary: syncprov leaks response controls
Product: OpenLDAP
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: overlays
Assignee: bugs(a)openldap.org
Reporter: ondra(a)mistotebe.net
Target Milestone: ---
syncprov_state_ctrl and syncprov_done_ctrl add controls to the response, but
noone cares to free them afterwards assuming they are allocated from the slab.
If there are many messages sent in a single run, this takes up fresh memory
that's leaked eventually.
See its8800 regression test for an example where this happens.
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=10541
Issue ID: 10541
Summary: syncrepl regression with older format of entryCSN
Product: OpenLDAP
Version: 2.6.13
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: slapd
Assignee: bugs(a)openldap.org
Reporter: benp(a)reed.edu
Target Milestone: ---
We recently upgraded from openldap 2.6.10 to 2.6.13 (using debian packages from
symas.com). Subsequent to the upgrade we noticed that syncrepl was sometimes
failing to replicate changes to entries.
It appears that the behavior is triggered when modifying an entry with an older
style entryCSN (eg "entryCSN: 20210115230536Z#000001#00#000000" vs the current
style "entryCSN: 20260715174316.844052Z#000000#001#000000"). The updated entry
on the provider slapd gets a new entryCSN that uses the new format, but the
consumer slapds don't process the changes made to the entry, and log a failed
assertion (122) error like this:
Jul 8 10:39:28 slapd-c daemon.info slapd[129831]: 6a3f4436.0d08671e
0x7f6d411fc6c0 syncrepl_entry: rid=011 be_modify
uid=example-user,ou=People,dc=foo,dc=bar (122)
Deleting the problematic entry on the provider and then recreating it tends to
resolve the issue for us, presumably because the new entry has the normal
non-obsolete contextCSN attribute.
Our current production DB has ~22k entries, ~4k of which have older style
contextCSNs, so we'd love to avoid having to delete and recreate those ~4k
entries if we don't have to.
We have entryCSNs in at least 3 different formats:
entryCSN: 2003081423:11:31Z#0x000d#0#0000
entryCSN: 20230410142047Z#000000#00#000000
entryCSN: 20260313112653.221151Z#000000#001#000000
Our current configuration does not use accesslog, so replication is simple
syncrepl (vs delta-syncrepl).
It was suggested on the openldap-technical list that we consider filing an ITS
about this issue. Please let me know what additional supporting information
would be helpful. I'm not totally certain how to distill are slapd.d style
config to something concise enough for the bug tracker.
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=10475
Quanah Gibson-Mount <quanah(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|TEST |FIXED
Status|RESOLVED |VERIFIED
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=10539
Issue ID: 10539
Summary: LMDB 1.0.0 fails to compile on Windows
Product: LMDB
Version: 1.0.0
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: liblmdb
Assignee: bugs(a)openldap.org
Reporter: hyc(a)openldap.org
Target Milestone: ---
Various errors around use of LARGE_INTEGER
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=10534
Issue ID: 10534
Summary: mdb_env_get_maxkeysize(): requires an _env_open()ed
handle
Product: LMDB
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: liblmdb
Assignee: bugs(a)openldap.org
Reporter: steffen(a)sdaoden.eu
Target Milestone: ---
Created attachment 1174
--> https://bugs.openldap.org/attachment.cgi?id=1174&action=edit
git-enabled patch
Super minor, but my LMDB implementation for the bogofilter program was buggy
because of this. They had to fix it accordingly after almost 8 years, when
updating to LMDB 1.0.
Suggested fix would be something like
- * @param[in] env An environment handle returned by #mdb_env_create()
+ * @param[in] env An environment handle that is #mdb_env_open()
Thanks! And ciao.
--
You are receiving this mail because:
You are on the CC list for the issue.