1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-26 21:57:41 +03:00

s4:repl_meta_data: normalize rdn attribute name via the schema

BUG: https://bugzilla.samba.org/show_bug.cgi?id=12399

Signed-off-by: Stefan Metzmacher <metze@samba.org>

Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Thu Dec  8 17:16:47 CET 2016 on sn-devel-144

(cherry picked from commit ec0297bbd0110f8bfddda2e21d94a882094d1c11)

Autobuild-User(v4-5-test): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(v4-5-test): Tue Jan 31 11:30:12 CET 2017 on sn-devel-144
This commit is contained in:
Stefan Metzmacher 2016-10-30 23:54:44 +01:00
parent e8c06cb2c0
commit d760f75e40

View File

@ -1446,15 +1446,21 @@ static int replmd_update_rpmd_rdn_attr(struct ldb_context *ldb,
NTTIME now,
bool is_schema_nc)
{
const char *rdn_name = ldb_dn_get_rdn_name(msg->dn);
const struct dsdb_attribute *rdn_attr =
dsdb_attribute_by_lDAPDisplayName(ar->schema, rdn_name);
const char *attr_name = rdn_attr != NULL ?
rdn_attr->lDAPDisplayName :
rdn_name;
struct ldb_message_element new_el = {
.flags = LDB_FLAG_MOD_REPLACE,
.name = ldb_dn_get_rdn_name(msg->dn),
.name = attr_name,
.num_values = 1,
.values = discard_const_p(struct ldb_val, rdn_new)
};
struct ldb_message_element old_el = {
.flags = LDB_FLAG_MOD_REPLACE,
.name = ldb_dn_get_rdn_name(msg->dn),
.name = attr_name,
.num_values = rdn_old ? 1 : 0,
.values = discard_const_p(struct ldb_val, rdn_old)
};