[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-2099-gee059e3

Günther Deschner gd at samba.org
Sat Jun 6 22:56:08 GMT 2009


The branch, master has been updated
       via  ee059e33d5227a53f90b2cbb5977c5017e7cec49 (commit)
       via  6544264ac139ea4d661e88737cd00b6af7db0599 (commit)
       via  0845db66e06a70d5cfd9adc476bc1a773b3fcc5f (commit)
      from  447fe57584cfd3280c3c8ac6ab19e484573ccd03 (commit)

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


- Log -----------------------------------------------------------------
commit ee059e33d5227a53f90b2cbb5977c5017e7cec49
Author: Günther Deschner <gd at samba.org>
Date:   Sun Jun 7 00:42:06 2009 +0200

    s3-samr: let _samr_SetGroupInfo level 3 just pass with success.
    
    Guenther

commit 6544264ac139ea4d661e88737cd00b6af7db0599
Author: Günther Deschner <gd at samba.org>
Date:   Sun Jun 7 00:40:46 2009 +0200

    s3-samr: _samr_EnumDomain{Users,Groups} need to return an emtpy array even for builtin domain.
    
    Found by RPC-SAMR torture test.
    
    Guenther

commit 0845db66e06a70d5cfd9adc476bc1a773b3fcc5f
Author: Günther Deschner <gd at samba.org>
Date:   Sun Jun 7 00:39:32 2009 +0200

    s4-smbtorture: skip samr MultipleMember alias tests for 3 as well as we do already for s4.
    
    Guenther

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

Summary of changes:
 source3/rpc_server/srv_samr_nt.c |   26 ++++++++++++++------------
 source4/torture/rpc/samr.c       |    5 +++--
 2 files changed, 17 insertions(+), 14 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpc_server/srv_samr_nt.c b/source3/rpc_server/srv_samr_nt.c
index ad5beef..396365b 100644
--- a/source3/rpc_server/srv_samr_nt.c
+++ b/source3/rpc_server/srv_samr_nt.c
@@ -939,6 +939,12 @@ NTSTATUS _samr_EnumDomainUsers(pipes_struct *p,
 		return status;
 	}
 
+	samr_array = TALLOC_ZERO_P(p->mem_ctx, struct samr_SamArray);
+	if (!samr_array) {
+		return NT_STATUS_NO_MEMORY;
+	}
+	*r->out.sam = samr_array;
+
 	if (sid_check_is_builtin(&dinfo->sid)) {
 		/* No users in builtin. */
 		*r->out.resume_handle = *r->in.resume_handle;
@@ -946,12 +952,6 @@ NTSTATUS _samr_EnumDomainUsers(pipes_struct *p,
 		return status;
 	}
 
-	samr_array = TALLOC_ZERO_P(p->mem_ctx, struct samr_SamArray);
-	if (!samr_array) {
-		return NT_STATUS_NO_MEMORY;
-	}
-	*r->out.sam = samr_array;
-
 	become_root();
 
 	/* AS ROOT !!!! */
@@ -1074,6 +1074,12 @@ NTSTATUS _samr_EnumDomainGroups(pipes_struct *p,
 
 	DEBUG(5,("_samr_EnumDomainGroups: %d\n", __LINE__));
 
+	samr_array = TALLOC_ZERO_P(p->mem_ctx, struct samr_SamArray);
+	if (!samr_array) {
+		return NT_STATUS_NO_MEMORY;
+	}
+	*r->out.sam = samr_array;
+
 	if (sid_check_is_builtin(&dinfo->sid)) {
 		/* No groups in builtin. */
 		*r->out.resume_handle = *r->in.resume_handle;
@@ -1081,11 +1087,6 @@ NTSTATUS _samr_EnumDomainGroups(pipes_struct *p,
 		return status;
 	}
 
-	samr_array = TALLOC_ZERO_P(p->mem_ctx, struct samr_SamArray);
-	if (!samr_array) {
-		return NT_STATUS_NO_MEMORY;
-	}
-
 	/* the domain group array is being allocated in the function below */
 
 	become_root();
@@ -1119,7 +1120,6 @@ NTSTATUS _samr_EnumDomainGroups(pipes_struct *p,
 	samr_array->count = num_groups;
 	samr_array->entries = samr_entries;
 
-	*r->out.sam = samr_array;
 	*r->out.num_entries = num_groups;
 	*r->out.resume_handle = num_groups + *r->in.resume_handle;
 
@@ -5956,6 +5956,8 @@ NTSTATUS _samr_SetGroupInfo(pipes_struct *p,
 		case 2:
 			/* group rename is not supported yet */
 			return NT_STATUS_NOT_SUPPORTED;
+		case 3:
+			break;
 		case 4:
 			fstrcpy(map.comment, r->in.info->description.string);
 			break;
diff --git a/source4/torture/rpc/samr.c b/source4/torture/rpc/samr.c
index f9eb294..c4ceb91 100644
--- a/source4/torture/rpc/samr.c
+++ b/source4/torture/rpc/samr.c
@@ -3840,8 +3840,9 @@ static bool test_alias_ops(struct dcerpc_pipe *p, struct torture_context *tctx,
 		ret = false;
 	}
 
-	if (torture_setting_bool(tctx, "samba4", false)) {
-		printf("skipping MultipleMembers Alias tests against Samba4\n");
+	if (torture_setting_bool(tctx, "samba3", false) ||
+	    torture_setting_bool(tctx, "samba4", false)) {
+		printf("skipping MultipleMembers Alias tests against Samba\n");
 		return ret;
 	}
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list