]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
dsdb: Fix CID 1453464: Error handling issues (CHECKED_RETURN)
authorVolker Lendecke <vl@samba.org>
Tue, 3 Sep 2019 08:35:33 +0000 (10:35 +0200)
committerJeremy Allison <jra@samba.org>
Wed, 4 Sep 2019 17:03:33 +0000 (17:03 +0000)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source4/dsdb/schema/schema_set.c

index 943d0ef49f59f9763ea11b74a67efb160a22649b..2ee2596570e40a72e0502f900e2f3f537d87c08c 100644 (file)
@@ -904,6 +904,7 @@ int dsdb_schema_fill_extended_dn(struct ldb_context *ldb, struct dsdb_schema *sc
                const struct ldb_val *rdn;
                struct ldb_val guid;
                NTSTATUS status;
+               int ret;
                struct ldb_dn *dn = ldb_dn_new(NULL, ldb, cur->defaultObjectCategory);
 
                if (!dn) {
@@ -925,7 +926,12 @@ int dsdb_schema_fill_extended_dn(struct ldb_context *ldb, struct dsdb_schema *sc
                        talloc_free(dn);
                        return ldb_operr(ldb);
                }
-               ldb_dn_set_extended_component(dn, "GUID", &guid);
+               ret = ldb_dn_set_extended_component(dn, "GUID", &guid);
+               if (ret != LDB_SUCCESS) {
+                       ret = ldb_error(ldb, ret, "Could not set GUID");
+                       talloc_free(dn);
+                       return ret;
+               }
 
                cur->defaultObjectCategory = ldb_dn_get_extended_linearized(cur, dn, 1);
                talloc_free(dn);