From 6628588dfba353c3d2948d14de2d24edfafc371d Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Wed, 30 Dec 2009 10:52:14 +1100 Subject: s4-dsdb: added dsdb_set_extended_dn_guid() --- source4/dsdb/common/util.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/source4/dsdb/common/util.c b/source4/dsdb/common/util.c index ef47079f9f..25d915d0bc 100644 --- a/source4/dsdb/common/util.c +++ b/source4/dsdb/common/util.c @@ -2794,6 +2794,25 @@ int dsdb_functional_level(struct ldb_context *ldb) return *domainFunctionality; } +/* + set a GUID in an extended DN structure + */ +int dsdb_set_extended_dn_guid(struct ldb_dn *dn, const struct GUID *guid, const char *component_name) +{ + struct ldb_val v; + NTSTATUS status; + int ret; + + status = GUID_to_ndr_blob(guid, dn, &v); + if (!NT_STATUS_IS_OK(status)) { + return LDB_ERR_INVALID_ATTRIBUTE_SYNTAX; + } + + ret = ldb_dn_set_extended_component(dn, component_name, &v); + data_blob_free(&v); + return ret; +} + /* return a GUID from a extended DN structure */ -- cgit