summaryrefslogtreecommitdiff
path: root/source/lib/ldb/samba/ldif_handlers.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/lib/ldb/samba/ldif_handlers.c')
-rw-r--r--source/lib/ldb/samba/ldif_handlers.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/source/lib/ldb/samba/ldif_handlers.c b/source/lib/ldb/samba/ldif_handlers.c
index 8abfb872382..d017306176b 100644
--- a/source/lib/ldb/samba/ldif_handlers.c
+++ b/source/lib/ldb/samba/ldif_handlers.c
@@ -300,8 +300,8 @@ static int ldif_canonicalise_objectCategory(struct ldb_context *ldb, void *mem_c
struct ldb_dn *dn1 = NULL;
char *oc1, *oc2;
- dn1 = ldb_dn_explode(mem_ctx, (char *)in->data);
- if (dn1 == NULL) {
+ dn1 = ldb_dn_new(mem_ctx, ldb, (char *)in->data);
+ if ( ! ldb_dn_validate(dn1)) {
oc1 = talloc_strndup(mem_ctx, (char *)in->data, in->length);
} else if (ldb_dn_get_comp_num(dn1) >= 1 && strcasecmp(ldb_dn_get_rdn_name(dn1), "cn") == 0) {
const struct ldb_val *val = ldb_dn_get_rdn_val(dn1);
@@ -325,8 +325,8 @@ static int ldif_comparison_objectCategory(struct ldb_context *ldb, void *mem_ctx
struct ldb_dn *dn1 = NULL, *dn2 = NULL;
const char *oc1, *oc2;
- dn1 = ldb_dn_explode(mem_ctx, (char *)v1->data);
- if (dn1 == NULL) {
+ dn1 = ldb_dn_new(mem_ctx, ldb, (char *)v1->data);
+ if ( ! ldb_dn_validate(dn1)) {
oc1 = talloc_strndup(mem_ctx, (char *)v1->data, v1->length);
} else if (ldb_dn_get_comp_num(dn1) >= 1 && strcasecmp(ldb_dn_get_rdn_name(dn1), "cn") == 0) {
const struct ldb_val *val = ldb_dn_get_rdn_val(dn1);
@@ -335,8 +335,8 @@ static int ldif_comparison_objectCategory(struct ldb_context *ldb, void *mem_ctx
oc1 = NULL;
}
- dn2 = ldb_dn_explode(mem_ctx, (char *)v2->data);
- if (dn2 == NULL) {
+ dn2 = ldb_dn_new(mem_ctx, ldb, (char *)v2->data);
+ if ( ! ldb_dn_validate(dn2)) {
oc2 = talloc_strndup(mem_ctx, (char *)v2->data, v2->length);
} else if (ldb_dn_get_comp_num(dn2) >= 2 && strcasecmp(ldb_dn_get_rdn_name(dn2), "cn") == 0) {
const struct ldb_val *val = ldb_dn_get_rdn_val(dn2);