[SCM] Samba Shared Repository - branch master updated

Andrew Bartlett abartlet at samba.org
Wed Oct 24 20:44:02 MDT 2012


The branch, master has been updated
       via  9dbb645 dsdb-cracknames: Return DRSUAPI_DS_NAME_STATUS_NO_MAPPING when there is no SID
      from  a9a3841 s4:dns_server: fix formatting difference compared to v4-0-test

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 9dbb64563c35003311d3f3d47e6c4ef0f546ffab
Author: Andrew Bartlett <abartlet at samba.org>
Date:   Wed Oct 24 16:41:52 2012 +1100

    dsdb-cracknames: Return DRSUAPI_DS_NAME_STATUS_NO_MAPPING when there is no SID
    
    If there is no SID for an object being mapped, then there is no NT4 name.
    
    We need to return DRSUAPI_DS_NAME_STATUS_NO_MAPPING rather than
    error out with anything other than WERR_OK as the return value.
    
    Andrew Bartlett
    
    Autobuild-User(master): Andrew Bartlett <abartlet at samba.org>
    Autobuild-Date(master): Thu Oct 25 04:43:25 CEST 2012 on sn-devel-104

-----------------------------------------------------------------------

Summary of changes:
 source4/dsdb/samdb/cracknames.c |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/dsdb/samdb/cracknames.c b/source4/dsdb/samdb/cracknames.c
index 6ad8026..8b52aa3 100644
--- a/source4/dsdb/samdb/cracknames.c
+++ b/source4/dsdb/samdb/cracknames.c
@@ -1067,9 +1067,13 @@ static WERROR DsCrackNameOneFilter(struct ldb_context *sam_ctx, TALLOC_CTX *mem_
 
 		const struct dom_sid *sid = samdb_result_dom_sid(mem_ctx, result, "objectSid");
 		const char *_acc = "", *_dom = "";
-
-		if (samdb_find_attribute(sam_ctx, result, "objectClass", "domain")) {
-
+		if (sid == NULL) {
+			info1->status = DRSUAPI_DS_NAME_STATUS_NO_MAPPING;
+			return WERR_OK;
+		} else if (samdb_find_attribute(sam_ctx, result, "objectClass", "domain")) {
+			/* This can also find a DomainDNSZones entry,
+			 * but it won't have the SID we just
+			 * checked.  */
 			ldb_ret = ldb_search(sam_ctx, mem_ctx, &domain_res,
 						     partitions_basedn,
 						     LDB_SCOPE_ONELEVEL,


-- 
Samba Shared Repository


More information about the samba-cvs mailing list