summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/dsdb/samdb/ldb_modules/samldb.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/source4/dsdb/samdb/ldb_modules/samldb.c b/source4/dsdb/samdb/ldb_modules/samldb.c
index 7db7ff0f04..41c97bf32a 100644
--- a/source4/dsdb/samdb/ldb_modules/samldb.c
+++ b/source4/dsdb/samdb/ldb_modules/samldb.c
@@ -2018,8 +2018,11 @@ static int samldb_service_principal_names_change(struct samldb_ctx *ac)
}
/*
- * append the new "servicePrincipalName" - code derived
- * from ldb_msg_add_value()
+ * append the new "servicePrincipalName" -
+ * code derived from ldb_msg_add_value().
+ *
+ * Open coded to make it clear that we must
+ * append to the MOD_REPLACE el created above.
*/
vals = talloc_realloc(ac->msg, el->values,
struct ldb_val,
@@ -2028,8 +2031,7 @@ static int samldb_service_principal_names_change(struct samldb_ctx *ac)
return ldb_module_oom(ac->module);
}
el->values = vals;
- el->values[el->num_values].data = (uint8_t *) new_str;
- el->values[el->num_values].length = strlen(new_str);
+ el->values[el->num_values] = data_blob_string_const(new_str);
++(el->num_values);
}
}