summaryrefslogtreecommitdiff
path: root/source4/torture
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2008-07-15 16:59:09 +0200
committerStefan Metzmacher <metze@samba.org>2008-07-16 12:16:58 +0200
commitc6ea7f02217fc28dc30882d3f9d543b805de2d74 (patch)
treec170e148fe7c2c7cdf84018b3dabbc652cee85b0 /source4/torture
parent033683b00ed99e891bb6bc5852dc2d6f146b1874 (diff)
downloadsamba-c6ea7f02217fc28dc30882d3f9d543b805de2d74.tar.gz
samba-c6ea7f02217fc28dc30882d3f9d543b805de2d74.tar.bz2
samba-c6ea7f02217fc28dc30882d3f9d543b805de2d74.zip
drsuapi: total_object_count was the wrong guess
The total_object_count member of DsGetNCChangesCtr[1|6] was wrong it's the error code of an extended operation. DsGetNCChangesCtr6 has a nc_object_count value which contains the estimated amount of objects in the naming_context. W2k seems to have a bug and sends this number of objects in the extended_ret field. Maybe it's just a bug and not a feature:-) metze (This used to be commit 67931092128ce89aadf689a54e20d6e4a9d7fe2c)
Diffstat (limited to 'source4/torture')
-rw-r--r--source4/torture/libnet/libnet_BecomeDC.c23
1 files changed, 10 insertions, 13 deletions
diff --git a/source4/torture/libnet/libnet_BecomeDC.c b/source4/torture/libnet/libnet_BecomeDC.c
index f34769de6c..2631746e95 100644
--- a/source4/torture/libnet/libnet_BecomeDC.c
+++ b/source4/torture/libnet/libnet_BecomeDC.c
@@ -123,7 +123,6 @@ static NTSTATUS test_apply_schema(struct test_become_dc_state *s,
{
WERROR status;
const struct drsuapi_DsReplicaOIDMapping_Ctr *mapping_ctr;
- uint32_t total_object_count;
uint32_t object_count;
struct drsuapi_DsReplicaObjectListItemEx *first_object;
struct drsuapi_DsReplicaObjectListItemEx *cur;
@@ -152,7 +151,6 @@ static NTSTATUS test_apply_schema(struct test_become_dc_state *s,
switch (c->ctr_level) {
case 1:
mapping_ctr = &c->ctr1->mapping_ctr;
- total_object_count = c->ctr1->total_object_count;
object_count = s->schema_part.object_count;
first_object = s->schema_part.first_object;
linked_attributes_count = 0;
@@ -164,7 +162,6 @@ static NTSTATUS test_apply_schema(struct test_become_dc_state *s,
break;
case 6:
mapping_ctr = &c->ctr6->mapping_ctr;
- total_object_count = c->ctr6->total_object_count;
object_count = s->schema_part.object_count;
first_object = s->schema_part.first_object;
linked_attributes_count = 0; /* TODO: ! */
@@ -360,7 +357,7 @@ static NTSTATUS test_become_dc_schema_chunk(void *private_data,
struct test_become_dc_state *s = talloc_get_type(private_data, struct test_become_dc_state);
WERROR status;
const struct drsuapi_DsReplicaOIDMapping_Ctr *mapping_ctr;
- uint32_t total_object_count;
+ uint32_t nc_object_count;
uint32_t object_count;
struct drsuapi_DsReplicaObjectListItemEx *first_object;
struct drsuapi_DsReplicaObjectListItemEx *cur;
@@ -368,13 +365,13 @@ static NTSTATUS test_become_dc_schema_chunk(void *private_data,
switch (c->ctr_level) {
case 1:
mapping_ctr = &c->ctr1->mapping_ctr;
- total_object_count = c->ctr1->total_object_count;
+ nc_object_count = c->ctr1->extended_ret; /* maybe w2k send this unexpected? */
object_count = c->ctr1->object_count;
first_object = c->ctr1->first_object;
break;
case 6:
mapping_ctr = &c->ctr6->mapping_ctr;
- total_object_count = c->ctr6->total_object_count;
+ nc_object_count = c->ctr6->nc_object_count;
object_count = c->ctr6->object_count;
first_object = c->ctr6->first_object;
break;
@@ -382,9 +379,9 @@ static NTSTATUS test_become_dc_schema_chunk(void *private_data,
return NT_STATUS_INVALID_PARAMETER;
}
- if (total_object_count) {
+ if (nc_object_count) {
DEBUG(0,("Schema-DN[%s] objects[%u/%u]\n",
- c->partition->nc.dn, object_count, total_object_count));
+ c->partition->nc.dn, object_count, nc_object_count));
} else {
DEBUG(0,("Schema-DN[%s] objects[%u]\n",
c->partition->nc.dn, object_count));
@@ -432,7 +429,7 @@ static NTSTATUS test_become_dc_store_chunk(void *private_data,
struct test_become_dc_state *s = talloc_get_type(private_data, struct test_become_dc_state);
WERROR status;
const struct drsuapi_DsReplicaOIDMapping_Ctr *mapping_ctr;
- uint32_t total_object_count;
+ uint32_t nc_object_count;
uint32_t object_count;
struct drsuapi_DsReplicaObjectListItemEx *first_object;
uint32_t linked_attributes_count;
@@ -451,7 +448,7 @@ static NTSTATUS test_become_dc_store_chunk(void *private_data,
switch (c->ctr_level) {
case 1:
mapping_ctr = &c->ctr1->mapping_ctr;
- total_object_count = c->ctr1->total_object_count;
+ nc_object_count = c->ctr1->extended_ret; /* maybe w2k send this unexpected? */
object_count = c->ctr1->object_count;
first_object = c->ctr1->first_object;
linked_attributes_count = 0;
@@ -463,7 +460,7 @@ static NTSTATUS test_become_dc_store_chunk(void *private_data,
break;
case 6:
mapping_ctr = &c->ctr6->mapping_ctr;
- total_object_count = c->ctr6->total_object_count;
+ nc_object_count = c->ctr6->nc_object_count;
object_count = c->ctr6->object_count;
first_object = c->ctr6->first_object;
linked_attributes_count = c->ctr6->linked_attributes_count;
@@ -488,9 +485,9 @@ static NTSTATUS test_become_dc_store_chunk(void *private_data,
NT_STATUS_HAVE_NO_MEMORY(tmp_dns_name);
s_dsa->other_info->dns_name = tmp_dns_name;
- if (total_object_count) {
+ if (nc_object_count) {
DEBUG(0,("Partition[%s] objects[%u/%u]\n",
- c->partition->nc.dn, object_count, total_object_count));
+ c->partition->nc.dn, object_count, nc_object_count));
} else {
DEBUG(0,("Partition[%s] objects[%u]\n",
c->partition->nc.dn, object_count));