dsdb: Give more errors in operational module when building the parentGUID
authorAndrew Bartlett <abartlet@samba.org>
Tue, 15 Mar 2016 02:11:54 +0000 (15:11 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Mon, 6 Jun 2016 14:36:22 +0000 (16:36 +0200)
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
source4/dsdb/samdb/ldb_modules/operational.c

index 0dd420ada05624ea6a2ac37195a0db2323af9a43..4205c4b716b3cc2fd48f921ead54ca6ffc753df8 100644 (file)
@@ -352,7 +352,7 @@ static int construct_parent_guid(struct ldb_module *module,
        if (parent_dn == NULL) {
                DEBUG(4,(__location__ ": Failed to find parent for dn %s\n",
                                         ldb_dn_get_linearized(msg->dn)));
-               return LDB_SUCCESS;
+               return LDB_ERR_OTHER;
        }
        ret = dsdb_module_search_dn(module, msg, &parent_res, parent_dn, attrs2,
                                    DSDB_FLAG_NEXT_MODULE |
@@ -372,7 +372,7 @@ static int construct_parent_guid(struct ldb_module *module,
        parent_guid = ldb_msg_find_ldb_val(parent_res->msgs[0], "objectGUID");
        if (!parent_guid) {
                talloc_free(parent_res);
-               return LDB_SUCCESS;
+               return LDB_ERR_INVALID_ATTRIBUTE_SYNTAX;
        }
 
        v = data_blob_dup_talloc(parent_res, *parent_guid);