The branch, v4-0-test has been updated via 1f5704e2dee5900e8d1d87699b76f67c0e12854e (commit) via 97e8d5813df19cae294b6de2a880606f0f8c2c59 (commit) via 7d80fab912576923c7474d77b8ed960b01296914 (commit) via a8aea9274170a2b472c45c97a4904bd299d2a92e (commit) from 08618bbd508ede0bb9e1922fae562cffdca41cbd (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v4-0-test - Log ----------------------------------------------------------------- commit 1f5704e2dee5900e8d1d87699b76f67c0e12854e Author: Michael Adam <[EMAIL PROTECTED]> Date: Wed Jul 23 15:34:45 2008 +0200 drsuapi: always set the pid field of the outgoing DsBindInfo to 0. This is for debugging and informational purposes only. The assignment is implementation specific. (WSPP docs, sec. 5.35). Michael commit 97e8d5813df19cae294b6de2a880606f0f8c2c59 Author: Michael Adam <[EMAIL PROTECTED]> Date: Wed Jul 23 15:21:44 2008 +0200 libnet_unbecome_dc: teach unbecomeDC_drsuapi_bind_recv() DsBindInfo48. ..to work agains w2k8. Michael commit 7d80fab912576923c7474d77b8ed960b01296914 Author: Michael Adam <[EMAIL PROTECTED]> Date: Wed Jul 23 15:18:57 2008 +0200 libnet_become_cd: teach becomeDC_drsuapi_bind_recv() DsBindInfo48. To work with w2k8. Michael commit a8aea9274170a2b472c45c97a4904bd299d2a92e Author: Michael Adam <[EMAIL PROTECTED]> Date: Wed Jul 23 14:07:06 2008 +0200 dsdb: teach dreplsrv_out_drsuapi_bind_recv() knowledge of DsBindInfo48. To make it work against w2k8. Michael ----------------------------------------------------------------------- Summary of changes: source/dsdb/repl/drepl_out_helpers.c | 9 +++++++++ source/libnet/libnet_become_dc.c | 16 ++++++++++------ source/libnet/libnet_unbecome_dc.c | 11 ++++++++++- source/torture/rpc/dssync.c | 2 +- 4 files changed, 30 insertions(+), 8 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 0700867..345e3db 100644 --- a/source/dsdb/repl/drepl_out_helpers.c +++ b/source/dsdb/repl/drepl_out_helpers.c @@ -146,6 +146,15 @@ static void dreplsrv_out_drsuapi_bind_recv(struct rpc_request *req) st->drsuapi->remote_info28.repl_epoch = 0; break; } + case 48: { + struct drsuapi_DsBindInfo48 *info48; + info48 = &st->bind_r.out.bind_info->info.info48; + st->drsuapi->remote_info28.supported_extensions = info48->supported_extensions; + st->drsuapi->remote_info28.site_guid = info48->site_guid; + st->drsuapi->remote_info28.pid = info48->pid; + st->drsuapi->remote_info28.repl_epoch = info48->repl_epoch; + break; + } case 28: st->drsuapi->remote_info28 = st->bind_r.out.bind_info->info.info28; break; diff --git a/source/libnet/libnet_become_dc.c b/source/libnet/libnet_become_dc.c index 31a9206..6a13974 100644 --- a/source/libnet/libnet_become_dc.c +++ b/source/libnet/libnet_become_dc.c @@ -1611,12 +1611,7 @@ static void becomeDC_drsuapi_bind_send(struct libnet_BecomeDC_state *s, bind_info28->supported_extensions |= DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS; #endif bind_info28->site_guid = s->dest_dsa.site_guid; - if (s->domain.behavior_version == 2) { - /* TODO: find out how this is really triggered! */ - bind_info28->pid = 528; - } else { - bind_info28->pid = 516; - } + bind_info28->pid = 0; bind_info28->repl_epoch = 0; drsuapi->bind_info_ctr.length = 28; @@ -1649,6 +1644,15 @@ static WERROR becomeDC_drsuapi_bind_recv(struct libnet_BecomeDC_state *s, drsuapi->remote_info28.repl_epoch = 0; break; } + case 48: { + struct drsuapi_DsBindInfo48 *info48; + info48 = &drsuapi->bind_r.out.bind_info->info.info48; + drsuapi->remote_info28.supported_extensions = info48->supported_extensions; + drsuapi->remote_info28.site_guid = info48->site_guid; + drsuapi->remote_info28.pid = info48->pid; + drsuapi->remote_info28.repl_epoch = info48->repl_epoch; + break; + } case 28: drsuapi->remote_info28 = drsuapi->bind_r.out.bind_info->info.info28; break; diff --git a/source/libnet/libnet_unbecome_dc.c b/source/libnet/libnet_unbecome_dc.c index e01af25..6a42fa2 100644 --- a/source/libnet/libnet_unbecome_dc.c +++ b/source/libnet/libnet_unbecome_dc.c @@ -574,7 +574,7 @@ static void unbecomeDC_drsuapi_bind_send(struct libnet_UnbecomeDC_state *s) bind_info28 = &s->drsuapi.local_info28; bind_info28->supported_extensions = 0; bind_info28->site_guid = GUID_zero(); - bind_info28->pid = 508; + bind_info28->pid = 0; bind_info28->repl_epoch = 0; s->drsuapi.bind_info_ctr.length = 28; @@ -616,6 +616,15 @@ static void unbecomeDC_drsuapi_bind_recv(struct rpc_request *req) s->drsuapi.remote_info28.repl_epoch = 0; break; } + case 48: { + struct drsuapi_DsBindInfo48 *info48; + info48 = &s->drsuapi.bind_r.out.bind_info->info.info48; + s->drsuapi.remote_info28.supported_extensions = info48->supported_extensions; + s->drsuapi.remote_info28.site_guid = info48->site_guid; + s->drsuapi.remote_info28.pid = info48->pid; + s->drsuapi.remote_info28.repl_epoch = info48->repl_epoch; + break; + } case 28: s->drsuapi.remote_info28 = s->drsuapi.bind_r.out.bind_info->info.info28; break; diff --git a/source/torture/rpc/dssync.c b/source/torture/rpc/dssync.c index 822cd08..2930a9b 100644 --- a/source/torture/rpc/dssync.c +++ b/source/torture/rpc/dssync.c @@ -154,7 +154,7 @@ static struct DsSyncTest *test_create_context(struct torture_context *tctx) our_bind_info28->supported_extensions |= DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS; } our_bind_info28->site_guid = GUID_zero(); - our_bind_info28->pid = 508; + our_bind_info28->pid = 0; our_bind_info28->repl_epoch = 0; our_bind_info_ctr = &ctx->new_dc.drsuapi.our_bind_info_ctr; -- Samba Shared Repository