struct ldb_context *ldb = ldb_module_get_ctx(ac->module);
unsigned krbtgt_number, i_start, i;
int ret;
+ char *newpass;
/* find a unused msDC-SecondaryKrbTgtNumber */
i_start = generate_random() & 0xFFFF;
return ldb_operr(ldb);
}
+ newpass = generate_random_password(ac, 128, 255);
+ if (newpass == NULL) {
+ return ldb_operr(ldb);
+ }
+
+ ret = ldb_msg_add_steal_string(ac->msg, "clearTextPassword", newpass);
+ if (ret != LDB_SUCCESS) {
+ return ldb_operr(ldb);
+ }
+
return samldb_next_step(ac);
}
* caller. Use the entry DN for it. */
ac->dn = ac->msg->dn;
- ret = samdb_msg_add_string(ldb, ac, ac->msg,
+ ret = samdb_msg_add_string(ldb, ac->msg, ac->msg,
"defaultObjectCategory",
ldb_dn_get_linearized(ac->dn));
if (ret != LDB_SUCCESS) {
if (!ldb_msg_find_element(ac->msg, "lDAPDisplayName")) {
/* the RDN has prefix "CN" */
ret = ldb_msg_add_string(ac->msg, "lDAPDisplayName",
- samdb_cn_to_lDAPDisplayName(ac,
+ samdb_cn_to_lDAPDisplayName(ac->msg,
(const char *) rdn_value->data));
if (ret != LDB_SUCCESS) {
ldb_oom(ldb);