mirror of
https://github.com/samba-team/samba.git
synced 2025-02-25 17:57:42 +03:00
libcli/smb: add smb2cli_req_get_send_iov()
Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
This commit is contained in:
parent
5c5a33cfcb
commit
a00fe90c3c
@ -3720,6 +3720,34 @@ NTSTATUS smb2cli_req_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx,
|
||||
return status;
|
||||
}
|
||||
|
||||
NTSTATUS smb2cli_req_get_sent_iov(struct tevent_req *req,
|
||||
struct iovec *sent_iov)
|
||||
{
|
||||
struct smbXcli_req_state *state =
|
||||
tevent_req_data(req,
|
||||
struct smbXcli_req_state);
|
||||
|
||||
if (tevent_req_is_in_progress(req)) {
|
||||
return STATUS_PENDING;
|
||||
}
|
||||
|
||||
sent_iov[0].iov_base = state->smb2.hdr;
|
||||
sent_iov[0].iov_len = sizeof(state->smb2.hdr);
|
||||
|
||||
sent_iov[1].iov_base = discard_const(state->smb2.fixed);
|
||||
sent_iov[1].iov_len = state->smb2.fixed_len;
|
||||
|
||||
if (state->smb2.dyn != NULL) {
|
||||
sent_iov[2].iov_base = discard_const(state->smb2.dyn);
|
||||
sent_iov[2].iov_len = state->smb2.dyn_len;
|
||||
} else {
|
||||
sent_iov[2].iov_base = NULL;
|
||||
sent_iov[2].iov_len = 0;
|
||||
}
|
||||
|
||||
return NT_STATUS_OK;
|
||||
}
|
||||
|
||||
static const struct {
|
||||
enum protocol_types proto;
|
||||
const char *smb1_name;
|
||||
|
@ -347,6 +347,16 @@ NTSTATUS smb2cli_req_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx,
|
||||
const struct smb2cli_req_expected_response *expected,
|
||||
size_t num_expected);
|
||||
|
||||
/*
|
||||
* This expects an iov[3] array, that is filled with references to
|
||||
* the buffers used for the sending the requests into the socket.
|
||||
*
|
||||
* This can only be called after smb2cli_req_recv(subreq) before
|
||||
* the TALLOC_FREE(subreq).
|
||||
*/
|
||||
NTSTATUS smb2cli_req_get_sent_iov(struct tevent_req *req,
|
||||
struct iovec *sent_iov);
|
||||
|
||||
struct tevent_req *smbXcli_negprot_send(TALLOC_CTX *mem_ctx,
|
||||
struct tevent_context *ev,
|
||||
struct smbXcli_conn *conn,
|
||||
|
Loading…
x
Reference in New Issue
Block a user