summaryrefslogtreecommitdiffstats
path: root/source3
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2014-06-11 10:00:09 +0200
committerMichael Adam <obnox@samba.org>2014-08-06 09:51:12 +0200
commit330febb7df3767cc1d1a381d95fa9e007fecff74 (patch)
tree3277efeb1859a89c83a67572d562519aa56ff12c /source3
parentd1d3294ceabfb70bde69c22375f15dce32a4de48 (diff)
downloadsamba-330febb7df3767cc1d1a381d95fa9e007fecff74.tar.gz
samba-330febb7df3767cc1d1a381d95fa9e007fecff74.tar.xz
samba-330febb7df3767cc1d1a381d95fa9e007fecff74.zip
s3:smb2_server: pass smbXsrv_connection to smbd_smb2_flush_send_queue()
Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>
Diffstat (limited to 'source3')
-rw-r--r--source3/smbd/smb2_server.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/source3/smbd/smb2_server.c b/source3/smbd/smb2_server.c
index e0d3ce99cc..8efd980a6e 100644
--- a/source3/smbd/smb2_server.c
+++ b/source3/smbd/smb2_server.c
@@ -34,7 +34,7 @@ static void smbd_smb2_connection_handler(struct tevent_context *ev,
struct tevent_fd *fde,
uint16_t flags,
void *private_data);
-static NTSTATUS smbd_smb2_flush_send_queue(struct smbd_server_connection *sconn);
+static NTSTATUS smbd_smb2_flush_send_queue(struct smbXsrv_connection *xconn);
static const struct smbd_smb2_dispatch_table {
uint16_t opcode;
@@ -1204,8 +1204,7 @@ static struct smbd_smb2_request *dup_smb2_req(const struct smbd_smb2_request *re
static NTSTATUS smb2_send_async_interim_response(const struct smbd_smb2_request *req)
{
- struct smbd_server_connection *sconn = req->sconn;
- struct smbXsrv_connection *xconn = req->sconn->conn;
+ struct smbXsrv_connection *xconn = req->xconn;
int first_idx = 1;
struct iovec *firsttf = NULL;
struct iovec *outhdr_v = NULL;
@@ -1274,7 +1273,7 @@ static NTSTATUS smb2_send_async_interim_response(const struct smbd_smb2_request
DLIST_ADD_END(xconn->smb2.send_queue, &nreq->queue_entry, NULL);
xconn->smb2.send_queue_len++;
- status = smbd_smb2_flush_send_queue(sconn);
+ status = smbd_smb2_flush_send_queue(xconn);
if (!NT_STATUS_IS_OK(status)) {
return status;
}
@@ -1606,7 +1605,7 @@ static void smbd_smb2_request_pending_timer(struct tevent_context *ev,
DLIST_ADD_END(xconn->smb2.send_queue, &state->queue_entry, NULL);
xconn->smb2.send_queue_len++;
- status = smbd_smb2_flush_send_queue(sconn);
+ status = smbd_smb2_flush_send_queue(xconn);
if (!NT_STATUS_IS_OK(status)) {
smbd_server_connection_terminate(sconn,
nt_errstr(status));
@@ -2340,8 +2339,7 @@ NTSTATUS smbd_smb2_request_dispatch(struct smbd_smb2_request *req)
static NTSTATUS smbd_smb2_request_reply(struct smbd_smb2_request *req)
{
- struct smbd_server_connection *sconn = req->sconn;
- struct smbXsrv_connection *xconn = req->sconn->conn;
+ struct smbXsrv_connection *xconn = req->xconn;
int first_idx = 1;
struct iovec *firsttf = SMBD_SMB2_IDX_TF_IOV(req,out,first_idx);
struct iovec *outhdr = SMBD_SMB2_OUT_HDR_IOV(req);
@@ -2524,7 +2522,7 @@ static NTSTATUS smbd_smb2_request_reply(struct smbd_smb2_request *req)
DLIST_ADD_END(xconn->smb2.send_queue, &req->queue_entry, NULL);
xconn->smb2.send_queue_len++;
- status = smbd_smb2_flush_send_queue(sconn);
+ status = smbd_smb2_flush_send_queue(xconn);
if (!NT_STATUS_IS_OK(status)) {
return status;
}
@@ -2853,7 +2851,7 @@ static NTSTATUS smbd_smb2_send_break(struct smbd_server_connection *sconn,
DLIST_ADD_END(xconn->smb2.send_queue, &state->queue_entry, NULL);
xconn->smb2.send_queue_len++;
- status = smbd_smb2_flush_send_queue(sconn);
+ status = smbd_smb2_flush_send_queue(xconn);
if (!NT_STATUS_IS_OK(status)) {
return status;
}
@@ -3108,9 +3106,8 @@ static int socket_error_from_errno(int ret,
return sys_errno;
}
-static NTSTATUS smbd_smb2_flush_send_queue(struct smbd_server_connection *sconn)
+static NTSTATUS smbd_smb2_flush_send_queue(struct smbXsrv_connection *xconn)
{
- struct smbXsrv_connection *xconn = sconn->conn;
int ret;
int err;
bool retry;
@@ -3241,7 +3238,7 @@ static NTSTATUS smbd_smb2_io_handler(struct smbXsrv_connection *xconn,
}
if (fde_flags & TEVENT_FD_WRITE) {
- status = smbd_smb2_flush_send_queue(sconn);
+ status = smbd_smb2_flush_send_queue(xconn);
if (!NT_STATUS_IS_OK(status)) {
return status;
}