diff options
author | Stefan Metzmacher <metze@samba.org> | 2006-01-24 17:36:13 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:51:26 -0500 |
commit | d5ae1a0387d281eeedc6c15f73df9dd13431a2bb (patch) | |
tree | 2261afe03581dd0e4145ed2f78cb25e8b5c4273a /source4 | |
parent | 28d78c40ade22c4b5d445dbe23f18ca210e41f8c (diff) | |
download | samba-d5ae1a0387d281eeedc6c15f73df9dd13431a2bb.tar.gz samba-d5ae1a0387d281eeedc6c15f73df9dd13431a2bb.tar.bz2 samba-d5ae1a0387d281eeedc6c15f73df9dd13431a2bb.zip |
r13111: w2k3 uses the naxVersion id for calculating the notification,
so we do now
metze
(This used to be commit e48a47aa650781ebe79425f41eee925f358ceb96)
Diffstat (limited to 'source4')
-rw-r--r-- | source4/wrepl_server/wrepl_out_push.c | 10 | ||||
-rw-r--r-- | source4/wrepl_server/wrepl_server.h | 4 |
2 files changed, 7 insertions, 7 deletions
diff --git a/source4/wrepl_server/wrepl_out_push.c b/source4/wrepl_server/wrepl_out_push.c index a9a7826f00..9c8c9fad8d 100644 --- a/source4/wrepl_server/wrepl_out_push.c +++ b/source4/wrepl_server/wrepl_out_push.c @@ -96,16 +96,16 @@ nomem: return; } -static uint32_t wreplsrv_calc_change_count(struct wreplsrv_partner *partner, uint64_t seqnumber) +static uint32_t wreplsrv_calc_change_count(struct wreplsrv_partner *partner, uint64_t maxVersionID) { uint64_t tmp_diff = UINT32_MAX; /* catch an overflow */ - if (partner->push.seqnumber > seqnumber) { + if (partner->push.maxVersionID > maxVersionID) { goto done; } - tmp_diff = seqnumber - partner->push.seqnumber; + tmp_diff = maxVersionID - partner->push.maxVersionID; if (tmp_diff > UINT32_MAX) { tmp_diff = UINT32_MAX; @@ -113,7 +113,7 @@ static uint32_t wreplsrv_calc_change_count(struct wreplsrv_partner *partner, uin } done: - partner->push.seqnumber = seqnumber; + partner->push.maxVersionID = maxVersionID; return (uint32_t)(tmp_diff & UINT32_MAX); } @@ -123,7 +123,7 @@ NTSTATUS wreplsrv_out_push_run(struct wreplsrv_service *service) uint64_t seqnumber; uint32_t change_count; - seqnumber = winsdb_get_seqnumber(service->wins_db); + seqnumber = winsdb_get_maxVersion(service->wins_db); for (partner = service->partners; partner; partner = partner->next) { /* if it's not a push partner, go to the next partner */ diff --git a/source4/wrepl_server/wrepl_server.h b/source4/wrepl_server/wrepl_server.h index bcf6f8ac48..c8dfcc64bd 100644 --- a/source4/wrepl_server/wrepl_server.h +++ b/source4/wrepl_server/wrepl_server.h @@ -165,8 +165,8 @@ struct wreplsrv_partner { /* change count till push notification */ uint32_t change_count; - /* the last wins db seqnumber we know about */ - uint64_t seqnumber; + /* the last wins db maxVersion have reported to the partner */ + uint64_t maxVersionID; /* we should use WREPL_REPL_INFORM* messages to this partner */ BOOL use_inform; |