Skip to content

Fully schema-aware ldb duplicate value enforcement.

This is a continuation of !697 (closed).

These patches address an important defect which has been around since the inception of LDB: the comparison operations on behalf of the attribute syntaxes. For now we had basically always compared LDB values first by the size and if it matched, we did a byte-wise (octet) check with the memcmp() function. Clearly this does not work with case-insensitive attributes, like DNS names or here more specifically against the service principal names where we have a valid bug report (https://bugzilla.samba.org/show_bug.cgi?id=8929) which existed for roughly ten years. Many attempts had been made in the mean-time but all were failing, including an alternative approach two years ago in 2017 (I guess by a colleague of @abartlet). This time I managed to find and fix the last mistake (a NULL pointer dereference) so that we finally have the patchset which passes the CI tests.

Edited by Matthias Dieter Wallnöfer

Merge request reports