Skip to content

Commit

Permalink
CVE-2018-14628: s4:dsdb: remove unused code in dirsync_filter_entry()
Browse files Browse the repository at this point in the history
This makes the next change easier to understand.

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

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
  • Loading branch information
metze-samba committed Oct 16, 2023
1 parent 7f8b15f commit 498542b
Showing 1 changed file with 5 additions and 48 deletions.
53 changes: 5 additions & 48 deletions source4/dsdb/samdb/ldb_modules/dirsync.c
Original file line number Diff line number Diff line change
Expand Up @@ -151,10 +151,6 @@ static int dirsync_filter_entry(struct ldb_request *req,
* list only the attribute that have been modified since last interrogation
*
*/
newmsg = ldb_msg_new(dsc->req);
if (newmsg == NULL) {
return ldb_oom(ldb);
}
for (i = msg->num_elements - 1; i >= 0; i--) {
if (ldb_attr_cmp(msg->elements[i].name, "uSNChanged") == 0) {
int error = 0;
Expand Down Expand Up @@ -201,11 +197,6 @@ static int dirsync_filter_entry(struct ldb_request *req,
*/
return LDB_SUCCESS;
}
newmsg->dn = ldb_dn_new(newmsg, ldb, "");
if (newmsg->dn == NULL) {
return ldb_oom(ldb);
}

el = ldb_msg_find_element(msg, "objectGUID");
if ( el != NULL) {
guidfound = true;
Expand All @@ -216,48 +207,14 @@ static int dirsync_filter_entry(struct ldb_request *req,
* we will uncomment the code below
*/
SMB_ASSERT(guidfound == true);
/*
if (guidfound == false) {
struct GUID guid;
struct ldb_val *new_val;
DATA_BLOB guid_blob;
tmp[0] = '\0';
txt = strrchr(txt, ':');
if (txt == NULL) {
return ldb_module_done(dsc->req, NULL, NULL, LDB_ERR_OPERATIONS_ERROR);
}
txt++;
status = GUID_from_string(txt, &guid);
if (!NT_STATUS_IS_OK(status)) {
return ldb_module_done(dsc->req, NULL, NULL, LDB_ERR_OPERATIONS_ERROR);
}
status = GUID_to_ndr_blob(&guid, msg, &guid_blob);
if (!NT_STATUS_IS_OK(status)) {
return ldb_module_done(dsc->req, NULL, NULL, LDB_ERR_OPERATIONS_ERROR);
}
new_val = talloc(msg, struct ldb_val);
if (new_val == NULL) {
return ldb_oom(ldb);
}
new_val->data = talloc_steal(new_val, guid_blob.data);
new_val->length = guid_blob.length;
if (ldb_msg_add_value(msg, "objectGUID", new_val, NULL) != 0) {
return ldb_module_done(dsc->req, NULL, NULL, LDB_ERR_OPERATIONS_ERROR);
}
}
*/
ldb_msg_add(newmsg, el, LDB_FLAG_MOD_ADD);
talloc_steal(newmsg->elements, el->name);
talloc_steal(newmsg->elements, el->values);

talloc_steal(newmsg->elements, msg);
return ldb_module_send_entry(dsc->req, msg, controls);
}

newmsg = ldb_msg_new(dsc->req);
if (newmsg == NULL) {
return ldb_oom(ldb);
}

ndr_err = ndr_pull_struct_blob(replMetaData, dsc, &rmd,
(ndr_pull_flags_fn_t)ndr_pull_replPropertyMetaDataBlob);
if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
Expand Down

0 comments on commit 498542b

Please sign in to comment.