diff options
author | Stefan Metzmacher <metze@samba.org> | 2005-12-14 19:07:53 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:47:23 -0500 |
commit | b1e50046657fcb8877b9199919f252f99ea701a0 (patch) | |
tree | 301f36590f207f7ca3f75cc5f6aa283c97c3a448 /source4 | |
parent | e55a7077e6526b53b23e2343165006652026de50 (diff) | |
download | samba-b1e50046657fcb8877b9199919f252f99ea701a0.tar.gz samba-b1e50046657fcb8877b9199919f252f99ea701a0.tar.bz2 samba-b1e50046657fcb8877b9199919f252f99ea701a0.zip |
r12241: fix the inform push notifies
metze
(This used to be commit 626d0e6fe508603f5f28b88fd18ff5d71a4660ca)
Diffstat (limited to 'source4')
-rw-r--r-- | source4/wrepl_server/wrepl_out_helpers.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/source4/wrepl_server/wrepl_out_helpers.c b/source4/wrepl_server/wrepl_out_helpers.c index d19c38bfb8..b990880fff 100644 --- a/source4/wrepl_server/wrepl_out_helpers.c +++ b/source4/wrepl_server/wrepl_out_helpers.c @@ -802,7 +802,7 @@ NTSTATUS wreplsrv_pull_cycle_recv(struct composite_context *c) enum wreplsrv_push_notify_stage { WREPLSRV_PUSH_NOTIFY_STAGE_WAIT_CONNECT, - WREPLSRV_PUSH_NOTIFY_STAGE_WAIT_UPDATE, + WREPLSRV_PUSH_NOTIFY_STAGE_WAIT_INFORM, WREPLSRV_PUSH_NOTIFY_STAGE_DONE }; @@ -944,7 +944,7 @@ static NTSTATUS wreplsrv_push_notify_inform(struct wreplsrv_push_notify_state *s state->req->async.fn = wreplsrv_push_notify_handler_req; state->req->async.private = state; - state->stage = WREPLSRV_PUSH_NOTIFY_STAGE_WAIT_UPDATE; + state->stage = WREPLSRV_PUSH_NOTIFY_STAGE_WAIT_INFORM; return NT_STATUS_OK; } @@ -976,9 +976,15 @@ static NTSTATUS wreplsrv_push_notify_wait_connect(struct wreplsrv_push_notify_st return NT_STATUS_INTERNAL_ERROR; } -static NTSTATUS wreplsrv_push_notify_wait_update(struct wreplsrv_push_notify_state *state) +static NTSTATUS wreplsrv_push_notify_wait_inform(struct wreplsrv_push_notify_state *state) { - return NT_STATUS_FOOBAR; + NTSTATUS status; + + status = wrepl_request_recv(state->req, state, NULL); + NT_STATUS_NOT_OK_RETURN(status); + + state->stage = WREPLSRV_PUSH_NOTIFY_STAGE_DONE; + return status; } static void wreplsrv_push_notify_handler(struct wreplsrv_push_notify_state *state) @@ -989,8 +995,8 @@ static void wreplsrv_push_notify_handler(struct wreplsrv_push_notify_state *stat case WREPLSRV_PUSH_NOTIFY_STAGE_WAIT_CONNECT: c->status = wreplsrv_push_notify_wait_connect(state); break; - case WREPLSRV_PUSH_NOTIFY_STAGE_WAIT_UPDATE: - c->status = wreplsrv_push_notify_wait_update(state); + case WREPLSRV_PUSH_NOTIFY_STAGE_WAIT_INFORM: + c->status = wreplsrv_push_notify_wait_inform(state); break; case WREPLSRV_PUSH_NOTIFY_STAGE_DONE: c->status = NT_STATUS_INTERNAL_ERROR; |