NTSTATUS status;
uint8_t *p;
uint16_t blob_length;
+ uint8_t *inbuf;
- status = cli_smb_recv(subreq, NULL, NULL, 1, &wct, &vwv,
+ status = cli_smb_recv(subreq, state, &inbuf, 1, &wct, &vwv,
&num_bytes, &bytes);
+ TALLOC_FREE(subreq);
if (!NT_STATUS_IS_OK(status)
&& !NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED)) {
- TALLOC_FREE(subreq);
tevent_req_nterror(req, status);
return;
}
state->status = status;
TALLOC_FREE(state->buf);
- state->inbuf = (char *)cli_smb_inbuf(subreq);
+ state->inbuf = (char *)inbuf;
cli->vuid = SVAL(state->inbuf, smb_uid);
blob_length = SVAL(vwv+3, 0);
if (blob_length > num_bytes) {
- TALLOC_FREE(subreq);
tevent_req_nterror(req, NT_STATUS_INVALID_NETWORK_RESPONSE);
return;
}
}
if (state->blob.length != 0) {
- TALLOC_FREE(subreq);
/*
* More to send
*/