diff options
author | Andrew Tridgell <tridge@samba.org> | 2009-09-14 13:24:07 -0700 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2009-09-14 13:24:07 -0700 |
commit | 5464ce6df678a6ce3022f4a30fd9553996cefb69 (patch) | |
tree | 86982aa8eda44b0de296f46171fdebb9a4be8597 /source4/rpc_server | |
parent | 72fcc6344f1ddfece4dd41790fc1add9c6d2c0f7 (diff) | |
parent | 3dd404abad878fa7e760ba50ce84fc80b82ea159 (diff) | |
download | samba-5464ce6df678a6ce3022f4a30fd9553996cefb69.tar.gz samba-5464ce6df678a6ce3022f4a30fd9553996cefb69.tar.bz2 samba-5464ce6df678a6ce3022f4a30fd9553996cefb69.zip |
Merge branch 'master' of /home/tridge/samba/git/combined
Diffstat (limited to 'source4/rpc_server')
-rw-r--r-- | source4/rpc_server/drsuapi/getncchanges.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/source4/rpc_server/drsuapi/getncchanges.c b/source4/rpc_server/drsuapi/getncchanges.c index 6f7637a970..165e485d45 100644 --- a/source4/rpc_server/drsuapi/getncchanges.c +++ b/source4/rpc_server/drsuapi/getncchanges.c @@ -94,12 +94,13 @@ static WERROR get_nc_changes_build_object(struct drsuapi_DsReplicaObjectListItem attids[n] = md.ctr.ctr1.array[i].attid; n++; } - if (n == 0) { - /* nothing to send */ - talloc_free(obj->meta_data_ctr); - obj->meta_data_ctr = NULL; - return WERR_OK; - } + + /* + note that if n==0 we still need to send the change, as it + could be a rename, which changes the uSNChanged, but not any + of the replicated attributes + */ + obj->meta_data_ctr->count = n; obj->object.identifier = talloc(obj, struct drsuapi_DsReplicaObjectIdentifier); @@ -315,7 +316,7 @@ WERROR dcesrv_drsuapi_DsGetNCChanges(struct dcesrv_call_state *dce_call, TALLOC_ ncRoot_dn = ldb_dn_new(mem_ctx, sam_ctx, ncRoot->dn); ret = drsuapi_search_with_extended_dn(sam_ctx, mem_ctx, &site_res, ncRoot_dn, LDB_SCOPE_SUBTREE, attrs, - "uSNChanged>=%llu", + "(uSNChanged>=%llu)", (unsigned long long)(r->in.req->req8.highwatermark.highest_usn+1)); if (ret != LDB_SUCCESS) { return WERR_DS_DRA_INTERNAL_ERROR; |