summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/librpc/rpc/dcerpc_smb2.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/source4/librpc/rpc/dcerpc_smb2.c b/source4/librpc/rpc/dcerpc_smb2.c
index 75fb423df4..0de8935797 100644
--- a/source4/librpc/rpc/dcerpc_smb2.c
+++ b/source4/librpc/rpc/dcerpc_smb2.c
@@ -284,13 +284,17 @@ static NTSTATUS smb2_send_trans_request(struct dcecli_connection *c, DATA_BLOB *
static void smb2_write_callback(struct smb2_request *req)
{
struct dcecli_connection *c = (struct dcecli_connection *)req->async.private_data;
+ struct smb2_write io;
+ NTSTATUS status;
- if (!NT_STATUS_IS_OK(req->status)) {
- DEBUG(0,("dcerpc_smb2: write callback error\n"));
- pipe_dead(c, req->status);
- }
+ ZERO_STRUCT(io);
- smb2_request_destroy(req);
+ status = smb2_write_recv(req, &io);
+ if (!NT_STATUS_IS_OK(status)) {
+ DEBUG(0,("dcerpc_smb2: write callback error: %s\n",
+ nt_errstr(status)));
+ pipe_dead(c, status);
+ }
}
/*