From 486f734fd8794fb424d44b21695973cbd01a348b Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Sat, 20 Feb 2010 15:25:34 +0100 Subject: [PATCH] s3: Explicitly handle inbuf in cli_message_start_done --- source3/libsmb/clifile.c | 7 +++---- source3/libsmb/climessage.c | 6 ++++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/source3/libsmb/clifile.c b/source3/libsmb/clifile.c index ec81cf92019..6e7a74f8d5d 100644 --- a/source3/libsmb/clifile.c +++ b/source3/libsmb/clifile.c @@ -4061,19 +4061,18 @@ static void cli_ctemp_done(struct tevent_req *subreq) uint16_t *vwv; uint32_t num_bytes = 0; uint8_t *bytes = NULL; + uint8_t *inbuf; - status = cli_smb_recv(subreq, NULL, NULL, 1, &wcnt, &vwv, + status = cli_smb_recv(subreq, state, &inbuf, 1, &wcnt, &vwv, &num_bytes, &bytes); + TALLOC_FREE(subreq); if (!NT_STATUS_IS_OK(status)) { - TALLOC_FREE(subreq); tevent_req_nterror(req, status); return; } state->fnum = SVAL(vwv+0, 0); - TALLOC_FREE(subreq); - /* From W2K3, the result is just the ASCII name */ if (num_bytes < 2) { tevent_req_nterror(req, NT_STATUS_DATA_ERROR); diff --git a/source3/libsmb/climessage.c b/source3/libsmb/climessage.c index 170447b2539..bdf2977af9c 100644 --- a/source3/libsmb/climessage.c +++ b/source3/libsmb/climessage.c @@ -91,8 +91,11 @@ static void cli_message_start_done(struct tevent_req *subreq) NTSTATUS status; uint8_t wct; uint16_t *vwv; + uint8_t *inbuf; - status = cli_smb_recv(subreq, NULL, NULL, 0, &wct, &vwv, NULL, NULL); + status = cli_smb_recv(subreq, state, &inbuf, 0, &wct, &vwv, + NULL, NULL); + TALLOC_FREE(subreq); if (!NT_STATUS_IS_OK(status)) { TALLOC_FREE(subreq); tevent_req_nterror(req, status); @@ -103,7 +106,6 @@ static void cli_message_start_done(struct tevent_req *subreq) } else { state->grp = 0; } - TALLOC_FREE(subreq); tevent_req_done(req); } -- 2.11.4.GIT