summaryrefslogtreecommitdiff
path: root/source3/libsmb/clifile.c
diff options
context:
space:
mode:
authorVolker Lendecke <vl@sernet.de>2008-12-01 08:23:35 +0100
committerVolker Lendecke <vl@samba.org>2008-12-08 22:09:33 +0100
commit7fbb64d726f23da49cd2f07e1a678ed575b70bfa (patch)
tree8b58be1fa57d5763f4b6be67105f05aeae644072 /source3/libsmb/clifile.c
parentf9aa69ae352f7f441b04976575b96ecc8b844dbd (diff)
downloadsamba-7fbb64d726f23da49cd2f07e1a678ed575b70bfa.tar.gz
samba-7fbb64d726f23da49cd2f07e1a678ed575b70bfa.tar.bz2
samba-7fbb64d726f23da49cd2f07e1a678ed575b70bfa.zip
Simplify async programming a bit with helper routines
Introduce async_req_is_error() and async_req_simple_recv()
Diffstat (limited to 'source3/libsmb/clifile.c')
-rw-r--r--source3/libsmb/clifile.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/source3/libsmb/clifile.c b/source3/libsmb/clifile.c
index a9e81082ea..733abb6510 100644
--- a/source3/libsmb/clifile.c
+++ b/source3/libsmb/clifile.c
@@ -908,9 +908,8 @@ NTSTATUS cli_open_recv(struct async_req *req, int *fnum)
uint8_t *bytes;
NTSTATUS status;
- SMB_ASSERT(req->state >= ASYNC_REQ_DONE);
- if (req->state == ASYNC_REQ_ERROR) {
- return req->status;
+ if (async_req_is_error(req, &status)) {
+ return status;
}
status = cli_pull_reply(req, &wct, &vwv, &num_bytes, &bytes);
@@ -985,10 +984,10 @@ NTSTATUS cli_close_recv(struct async_req *req)
uint16_t *vwv;
uint16_t num_bytes;
uint8_t *bytes;
+ NTSTATUS status;
- SMB_ASSERT(req->state >= ASYNC_REQ_DONE);
- if (req->state == ASYNC_REQ_ERROR) {
- return req->status;
+ if (async_req_is_error(req, &status)) {
+ return status;
}
return cli_pull_reply(req, &wct, &vwv, &num_bytes, &bytes);