[SCM] Samba Shared Repository - branch master updated

Kamen Mazdrashki kamenim at samba.org
Fri Oct 8 21:44:01 MDT 2010


The branch, master has been updated
       via  2d2dbf5 s4-test-msds_intid: Verify ATTIDs for Linked Attributes
       via  6853883 s4-test-msds_intid: Simplify parameters for _make_error_message() function
      from  9e1e581 More neccessary const.

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


- Log -----------------------------------------------------------------
commit 2d2dbf53ee110bfcd2f193d3e5c8d0e27759c4f3
Author: Kamen Mazdrashki <kamenim at samba.org>
Date:   Sat Oct 9 05:40:32 2010 +0300

    s4-test-msds_intid: Verify ATTIDs for Linked Attributes
    
    Autobuild-User: Kamen Mazdrashki <kamenim at samba.org>
    Autobuild-Date: Sat Oct  9 03:43:34 UTC 2010 on sn-devel-104

commit 6853883f3f171c69b28a0888548aaa464e163ac7
Author: Kamen Mazdrashki <kamenim at samba.org>
Date:   Sat Oct 9 04:22:24 2010 +0300

    s4-test-msds_intid: Simplify parameters for _make_error_message() function
    
    so it can be used in more places - when checking for
    Linked Attributes ATTIDs for instance

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

Summary of changes:
 source4/torture/drs/rpc/msds_intid.c |   73 +++++++++++++++++++++++++++++-----
 1 files changed, 63 insertions(+), 10 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/torture/drs/rpc/msds_intid.c b/source4/torture/drs/rpc/msds_intid.c
index ea5bdc6..2b2fa5e 100644
--- a/source4/torture/drs/rpc/msds_intid.c
+++ b/source4/torture/drs/rpc/msds_intid.c
@@ -460,17 +460,17 @@ static bool _test_GetNCChanges(struct torture_context *tctx,
 }
 
 static char * _make_error_message(TALLOC_CTX *mem_ctx,
-                                  const struct dsdb_attribute *dsdb_attr,
-                                  const struct drsuapi_DsReplicaAttribute *drs_attr,
-                                  const struct drsuapi_DsReplicaObjectListItemEx *drs_obj)
+				  enum drsuapi_DsAttributeId drs_attid,
+				  const struct dsdb_attribute *dsdb_attr,
+				  const struct drsuapi_DsReplicaObjectIdentifier *identifier)
 {
 	return talloc_asprintf(mem_ctx, "\nInvalid ATTID for %1$s (%2$s)\n"
 			       " drs_attid:      %3$11d (0x%3$08X)\n"
 			       " msDS_IntId:     %4$11d (0x%4$08X)\n"
 			       " attributeId_id: %5$11d (0x%5$08X)",
 			       dsdb_attr->lDAPDisplayName,
-			       drs_obj->object.identifier->dn,
-			       drs_attr->attid,
+			       identifier->dn,
+			       drs_attid,
 			       dsdb_attr->msDS_IntId,
 			       dsdb_attr->attributeID_id);
 }
@@ -489,6 +489,7 @@ static bool test_dsintid_schema(struct torture_context *tctx, struct DsIntIdTest
 	const struct drsuapi_DsReplicaAttribute *drs_attr;
 	const struct drsuapi_DsReplicaAttributeCtr *attr_ctr;
 	const struct drsuapi_DsReplicaObjectListItemEx *cur;
+	const struct drsuapi_DsReplicaLinkedAttribute *la;
 	TALLOC_CTX *mem_ctx;
 
 	mem_ctx = talloc_new(ctx);
@@ -518,15 +519,40 @@ static bool test_dsintid_schema(struct torture_context *tctx, struct DsIntIdTest
 
 			torture_assert(tctx,
 				       drs_attr->attid == dsdb_attr->attributeID_id,
-				       _make_error_message(ctx, dsdb_attr, drs_attr, cur))
+				       _make_error_message(ctx, drs_attr->attid,
+							   dsdb_attr,
+							   cur->object.identifier));
 			if (dsdb_attr->msDS_IntId) {
 				torture_assert(tctx,
-				               drs_attr->attid != dsdb_attr->msDS_IntId,
-				               _make_error_message(ctx, dsdb_attr, drs_attr, cur))
+					       drs_attr->attid != dsdb_attr->msDS_IntId,
+					       _make_error_message(ctx, drs_attr->attid,
+								   dsdb_attr,
+								   cur->object.identifier));
 			}
 		}
 	}
 
+	/* verify ATTIDs for Linked Attributes */
+	torture_comment(tctx, "Verify ATTIDs for Linked Attributes (%u)\n",
+			ctr6->linked_attributes_count);
+	for (i = 0; i < ctr6->linked_attributes_count; i++) {
+		la = &ctr6->linked_attributes[i];
+		dsdb_attr = dsdb_attribute_by_attributeID_id(ldap_schema, la->attid);
+
+		torture_assert(tctx,
+			       la->attid == dsdb_attr->attributeID_id,
+			       _make_error_message(ctx, la->attid,
+						   dsdb_attr,
+						   la->identifier))
+		if (dsdb_attr->msDS_IntId) {
+			torture_assert(tctx,
+				       drs_attr->attid != dsdb_attr->msDS_IntId,
+				       _make_error_message(ctx, la->attid,
+							   dsdb_attr,
+							   la->identifier))
+		}
+	}
+
 	talloc_free(mem_ctx);
 
 	return true;
@@ -547,6 +573,7 @@ static bool test_dsintid_domain(struct torture_context *tctx, struct DsIntIdTest
 	const struct drsuapi_DsReplicaAttribute *drs_attr;
 	const struct drsuapi_DsReplicaAttributeCtr *attr_ctr;
 	const struct drsuapi_DsReplicaObjectListItemEx *cur;
+	const struct drsuapi_DsReplicaLinkedAttribute *la;
 	TALLOC_CTX *mem_ctx;
 
 	mem_ctx = talloc_new(ctx);
@@ -576,15 +603,41 @@ static bool test_dsintid_domain(struct torture_context *tctx, struct DsIntIdTest
 			if (dsdb_attr->msDS_IntId) {
 				torture_assert(tctx,
 				               drs_attr->attid == dsdb_attr->msDS_IntId,
-				               _make_error_message(ctx, dsdb_attr, drs_attr, cur))
+					       _make_error_message(ctx, drs_attr->attid,
+								   dsdb_attr,
+								   cur->object.identifier));
 			} else {
 				torture_assert(tctx,
 					       drs_attr->attid == dsdb_attr->attributeID_id,
-					       _make_error_message(ctx, dsdb_attr, drs_attr, cur))
+					       _make_error_message(ctx, drs_attr->attid,
+								   dsdb_attr,
+								   cur->object.identifier));
 			}
 		}
 	}
 
+	/* verify ATTIDs for Linked Attributes */
+	torture_comment(tctx, "Verify ATTIDs for Linked Attributes (%u)\n",
+			ctr6->linked_attributes_count);
+	for (i = 0; i < ctr6->linked_attributes_count; i++) {
+		la = &ctr6->linked_attributes[i];
+		dsdb_attr = dsdb_attribute_by_attributeID_id(ldap_schema, la->attid);
+
+		if (dsdb_attr->msDS_IntId) {
+			torture_assert(tctx,
+				       la->attid == dsdb_attr->msDS_IntId,
+				       _make_error_message(ctx, la->attid,
+							   dsdb_attr,
+							   la->identifier));
+		} else {
+			torture_assert(tctx,
+				       la->attid == dsdb_attr->attributeID_id,
+				       _make_error_message(ctx, la->attid,
+							   dsdb_attr,
+							   la->identifier));
+		}
+	}
+
 	talloc_free(mem_ctx);
 
 	return true;


-- 
Samba Shared Repository


More information about the samba-cvs mailing list