The branch, v4-0-test has been updated
       via  82940f6ca120026378e6deb49a07becb2d581f45 (commit)
       via  d41b3dd6ffc4fd894bc05798dbc2ff4b53933a06 (commit)
       via  924ef407bd20331cc94f5aeb58f53a5838ae00a4 (commit)
      from  bb6e0ee953dfc59d0e04f9ea2daf051f6a6ff837 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v4-0-test


- Log -----------------------------------------------------------------
commit 82940f6ca120026378e6deb49a07becb2d581f45
Author: Stefan Metzmacher <[EMAIL PROTECTED]>
Date:   Mon Jun 30 17:15:49 2008 +0200

    schema_fsmo: only set module->private_data in case we keep the struct for a 
long time
    
    metze

commit d41b3dd6ffc4fd894bc05798dbc2ff4b53933a06
Author: Stefan Metzmacher <[EMAIL PROTECTED]>
Date:   Mon Jun 30 13:03:17 2008 +0200

    drsuapi.idl: remove some unknows from DsGetNCChanges() (update samba4 
callers)
    
    metze

commit 924ef407bd20331cc94f5aeb58f53a5838ae00a4
Author: Stefan Metzmacher <[EMAIL PROTECTED]>
Date:   Mon Jun 30 13:01:02 2008 +0200

    drsuapi.idl: remove some unknows from DsGetNCChanges()
    
    metze

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

Summary of changes:
 source/dsdb/repl/drepl_out_helpers.c        |   12 +++++-----
 source/dsdb/samdb/ldb_modules/schema_fsmo.c |    5 ++-
 source/libnet/libnet_become_dc.c            |   12 +++++-----
 source/librpc/idl/drsuapi.idl               |   30 +++++++++++++++++++++-----
 source/torture/rpc/drsuapi.c                |   12 +++++-----
 source/torture/rpc/dssync.c                 |   12 +++++-----
 6 files changed, 51 insertions(+), 32 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/dsdb/repl/drepl_out_helpers.c 
b/source/dsdb/repl/drepl_out_helpers.c
index aede6e6..d79d94f 100644
--- a/source/dsdb/repl/drepl_out_helpers.c
+++ b/source/dsdb/repl/drepl_out_helpers.c
@@ -253,10 +253,10 @@ static void 
dreplsrv_op_pull_source_get_changes_send(struct dreplsrv_op_pull_sou
                r->in.req.req8.replica_flags            = rf1->replica_flags;
                r->in.req.req8.max_object_count         = 133;
                r->in.req.req8.max_ndr_size             = 1336811;
-               r->in.req.req8.unknown4                 = 0;
-               r->in.req.req8.h1                       = 0;
-               r->in.req.req8.unique_ptr1              = 0;
-               r->in.req.req8.unique_ptr2              = 0;
+               r->in.req.req8.extended_op              = DRSUAPI_EXOP_NONE;
+               r->in.req.req8.fsmo_info                = 0;
+               r->in.req.req8.partial_attribute_set    = NULL;
+               r->in.req.req8.partial_attribute_set_ex = NULL;
                r->in.req.req8.mapping_ctr.num_mappings = 0;
                r->in.req.req8.mapping_ctr.mappings     = NULL;
        } else {
@@ -269,8 +269,8 @@ static void dreplsrv_op_pull_source_get_changes_send(struct 
dreplsrv_op_pull_sou
                r->in.req.req5.replica_flags            = rf1->replica_flags;
                r->in.req.req5.max_object_count         = 133;
                r->in.req.req5.max_ndr_size             = 1336770;
-               r->in.req.req5.unknown4                 = 0;
-               r->in.req.req5.h1                       = 0;
+               r->in.req.req5.extended_op              = DRSUAPI_EXOP_NONE;
+               r->in.req.req5.fsmo_info                = 0;
        }
 
        req = dcerpc_drsuapi_DsGetNCChanges_send(drsuapi->pipe, r, r);
diff --git a/source/dsdb/samdb/ldb_modules/schema_fsmo.c 
b/source/dsdb/samdb/ldb_modules/schema_fsmo.c
index 8ceeba9..bc1e60a 100644
--- a/source/dsdb/samdb/ldb_modules/schema_fsmo.c
+++ b/source/dsdb/samdb/ldb_modules/schema_fsmo.c
@@ -54,6 +54,8 @@ static int schema_fsmo_init(struct ldb_module *module)
                NULL
        };
 
+       module->private_data = NULL;
+
        if (dsdb_get_schema(module->ldb)) {
                return ldb_next_init(module);
        }
@@ -77,7 +79,6 @@ static int schema_fsmo_init(struct ldb_module *module)
                ldb_oom(module->ldb);
                return LDB_ERR_OPERATIONS_ERROR;
        }
-       module->private_data = schema_fsmo;
 
        schema = dsdb_new_schema(mem_ctx, 
lp_iconv_convenience(ldb_get_opaque(module->ldb, "loadparm")));
        if (!schema) {
@@ -246,7 +247,7 @@ static int schema_fsmo_init(struct ldb_module *module)
                return LDB_ERR_OPERATIONS_ERROR;
        }
 
-       talloc_steal(module, schema_fsmo);
+       module->private_data = talloc_steal(module, schema_fsmo);
 
        ldb_debug(module->ldb, LDB_DEBUG_TRACE,
                          "schema_fsmo_init: we are master: %s\n",
diff --git a/source/libnet/libnet_become_dc.c b/source/libnet/libnet_become_dc.c
index 1c4c1d0..d3eeebe 100644
--- a/source/libnet/libnet_become_dc.c
+++ b/source/libnet/libnet_become_dc.c
@@ -2392,10 +2392,10 @@ static void becomeDC_drsuapi_pull_partition_send(struct 
libnet_BecomeDC_state *s
                r->in.req.req8.replica_flags            = 
partition->replica_flags;
                r->in.req.req8.max_object_count         = 133;
                r->in.req.req8.max_ndr_size             = 1336811;
-               r->in.req.req8.unknown4                 = 0;
-               r->in.req.req8.h1                       = 0;
-               r->in.req.req8.unique_ptr1              = 0;
-               r->in.req.req8.unique_ptr2              = 0;
+               r->in.req.req8.extended_op              = DRSUAPI_EXOP_NONE;
+               r->in.req.req8.fsmo_info                = 0;
+               r->in.req.req8.partial_attribute_set    = NULL;
+               r->in.req.req8.partial_attribute_set_ex = NULL;
                r->in.req.req8.mapping_ctr.num_mappings = 0;
                r->in.req.req8.mapping_ctr.mappings     = NULL;
        } else {
@@ -2408,8 +2408,8 @@ static void becomeDC_drsuapi_pull_partition_send(struct 
libnet_BecomeDC_state *s
                r->in.req.req5.replica_flags            = 
partition->replica_flags;
                r->in.req.req5.max_object_count         = 133;
                r->in.req.req5.max_ndr_size             = 1336770;
-               r->in.req.req5.unknown4                 = 0;
-               r->in.req.req5.h1                       = 0;
+               r->in.req.req5.extended_op              = DRSUAPI_EXOP_NONE;
+               r->in.req.req5.fsmo_info                = 0;
        }
 
        /* 
diff --git a/source/librpc/idl/drsuapi.idl b/source/librpc/idl/drsuapi.idl
index 2f48287..6701d22 100644
--- a/source/librpc/idl/drsuapi.idl
+++ b/source/librpc/idl/drsuapi.idl
@@ -230,6 +230,17 @@ interface drsuapi
                DRSUAPI_DS_REPLICA_NEIGHBOUR_PARTIAL_ATTRIBUTE_SET              
= 0x40000000
        } drsuapi_DsReplicaNeighbourFlags;
 
+       typedef [flag(NDR_PAHEX),v1_enum] enum {
+               DRSUAPI_EXOP_NONE                               = 0x00000000,
+               DRSUAPI_EXOP_FSMO_REQ_ROLE                      = 0x00000001,
+               DRSUAPI_EXOP_FSMO_RID_ALLOC                     = 0x00000002,
+               DRSUAPI_EXOP_FSMO_RID_REQ_ROLE                  = 0x00000003,
+               DRSUAPI_EXOP_FSMO_REQ_PDC                       = 0x00000004,
+               DRSUAPI_EXOP_FSMO_ABANDON_ROLE                  = 0x00000005,
+               DRSUAPI_EXOP_REPL_OBJ                           = 0x00000006,
+               DRSUAPI_EXOP_REPL_SECRET                        = 0x00000007
+       } drsuapi_DsExtendedOperation;
+
        typedef struct {
                GUID destination_dsa_guid;
                GUID source_dsa_invocation_id; /* the 'invocationId' field of 
the CN=NTDS Settings object */
@@ -239,8 +250,8 @@ interface drsuapi
                drsuapi_DsReplicaNeighbourFlags replica_flags;
                uint32 max_object_count; /* w2k3 uses 
min(133,max(100,max_object_count)) */
                uint32 max_ndr_size; /* w2k3 seems to ignore this */
-               uint32 unknown4;
-               hyper h1;
+               drsuapi_DsExtendedOperation extended_op;
+               hyper fsmo_info;
        } drsuapi_DsGetNCChangesRequest5;
 
        /*
@@ -401,6 +412,13 @@ interface drsuapi
        } drsuapi_DsAttributeId;
 
        typedef struct {
+               [value(1)] uint32 version;
+               [value(0)] uint32 reserved1;
+               [range(1,0x100000)] uint32 num_attids;
+               [size_is(num_attids)] drsuapi_DsAttributeId attids[];
+       } drsuapi_DsPartialAttributeSet;
+
+       typedef struct {
                GUID destination_dsa_guid;
                GUID source_dsa_invocation_id; /* the 'invocationId' field of 
the CN=NTDS Settings object */
                [ref] drsuapi_DsReplicaObjectIdentifier *naming_context;
@@ -409,10 +427,10 @@ interface drsuapi
                drsuapi_DsReplicaNeighbourFlags replica_flags;
                uint32 max_object_count; /* w2k3 uses 
min(133,max(100,max_object_count)) */
                uint32 max_ndr_size; /* w2k3 seems to ignore this */
-               uint32 unknown4;
-               hyper h1;
-               uint32 unique_ptr1;
-               uint32 unique_ptr2;
+               drsuapi_DsExtendedOperation extended_op;
+               hyper fsmo_info;
+               drsuapi_DsPartialAttributeSet *partial_attribute_set;
+               drsuapi_DsPartialAttributeSet *partial_attribute_set_ex;
                drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr;
        } drsuapi_DsGetNCChangesRequest8;
 
diff --git a/source/torture/rpc/drsuapi.c b/source/torture/rpc/drsuapi.c
index bbdb73e..e5cb3d7 100644
--- a/source/torture/rpc/drsuapi.c
+++ b/source/torture/rpc/drsuapi.c
@@ -549,8 +549,8 @@ static bool test_DsGetNCChanges(struct dcerpc_pipe *p, 
struct torture_context *t
                        }
                        r.in.req.req5.max_object_count                  = 0;
                        r.in.req.req5.max_ndr_size                      = 0;
-                       r.in.req.req5.unknown4                          = 0;
-                       r.in.req.req5.h1                                = 0;
+                       r.in.req.req5.extended_op                       = 
DRSUAPI_EXOP_NONE;
+                       r.in.req.req5.fsmo_info                         = 0;
 
                        break;
                case 8:
@@ -579,10 +579,10 @@ static bool test_DsGetNCChanges(struct dcerpc_pipe *p, 
struct torture_context *t
                                                                        ;
                        r.in.req.req8.max_object_count                  = 402;
                        r.in.req.req8.max_ndr_size                      = 
402116;
-                       r.in.req.req8.unknown4                          = 0;
-                       r.in.req.req8.h1                                = 0;
-                       r.in.req.req8.unique_ptr1                       = 0;
-                       r.in.req.req8.unique_ptr2                       = 0;
+                       r.in.req.req8.extended_op                       = 
DRSUAPI_EXOP_NONE;
+                       r.in.req.req8.fsmo_info                         = 0;
+                       r.in.req.req8.partial_attribute_set             = NULL;
+                       r.in.req.req8.partial_attribute_set_ex          = NULL;
                        r.in.req.req8.mapping_ctr.num_mappings          = 0;
                        r.in.req.req8.mapping_ctr.mappings              = NULL;
 
diff --git a/source/torture/rpc/dssync.c b/source/torture/rpc/dssync.c
index 989a1fa..ec52768 100644
--- a/source/torture/rpc/dssync.c
+++ b/source/torture/rpc/dssync.c
@@ -623,8 +623,8 @@ static bool test_FetchData(struct torture_context *tctx, 
struct DsSyncTest *ctx)
                                                                        ;
                        r.in.req.req5.max_object_count                  = 133;
                        r.in.req.req5.max_ndr_size                      = 
1336770;
-                       r.in.req.req5.unknown4                          = 0;
-                       r.in.req.req5.h1                                = 0;
+                       r.in.req.req5.extended_op                       = 
DRSUAPI_EXOP_NONE;
+                       r.in.req.req5.fsmo_info                         = 0;
 
                        break;
                case 8:
@@ -655,10 +655,10 @@ static bool test_FetchData(struct torture_context *tctx, 
struct DsSyncTest *ctx)
                        r.in.req.req8.max_object_count                  = 402;
                        r.in.req.req8.max_ndr_size                      = 
402116;
 
-                       r.in.req.req8.unknown4                          = 0;
-                       r.in.req.req8.h1                                = 0;
-                       r.in.req.req8.unique_ptr1                       = 0;
-                       r.in.req.req8.unique_ptr2                       = 0;
+                       r.in.req.req8.extended_op                       = 
DRSUAPI_EXOP_NONE;
+                       r.in.req.req8.fsmo_info                         = 0;
+                       r.in.req.req8.partial_attribute_set             = NULL;
+                       r.in.req.req8.partial_attribute_set_ex          = NULL;
                        r.in.req.req8.mapping_ctr.num_mappings          = 0;
                        r.in.req.req8.mapping_ctr.mappings              = NULL;
 


-- 
Samba Shared Repository

Reply via email to