s3: Remove smbd_server_fd() from reply_writebraw
[ira/wip.git] / source3 / smbd / reply.c
index 4cbe4425e8783c24fc1f08fcc1f33587598da1bb..4f2bac2c294cb538adb477d25e9b9f32b79f80db 100644 (file)
@@ -2934,8 +2934,10 @@ static void send_file_readbraw(connection_struct *conn,
                _smb_setlen(header,nread);
                header_blob = data_blob_const(header, 4);
 
-               if ((sendfile_read = SMB_VFS_SENDFILE(smbd_server_fd(), fsp,
-                               &header_blob, startpos, nread)) == -1) {
+               sendfile_read = SMB_VFS_SENDFILE(sconn->sock, fsp,
+                                                &header_blob, startpos,
+                                                nread);
+               if (sendfile_read == -1) {
                        /* Returning ENOSYS means no data at all was sent.
                         * Do this as a normal read. */
                        if (errno == ENOSYS) {
@@ -3011,7 +3013,7 @@ normal_readbraw:
        }
 
        _smb_setlen(outbuf,ret);
-       if (write_data(smbd_server_fd(),outbuf,4+ret) != 4+ret)
+       if (write_data(sconn->sock, outbuf, 4+ret) != 4+ret)
                fail_readraw();
 
        TALLOC_FREE(outbuf);
@@ -3477,7 +3479,9 @@ static void send_file_readX(connection_struct *conn, struct smb_request *req,
                construct_reply_common_req(req, (char *)headerbuf);
                setup_readX_header(req, (char *)headerbuf, smb_maxcnt);
 
-               if ((nread = SMB_VFS_SENDFILE(smbd_server_fd(), fsp, &header, startpos, smb_maxcnt)) == -1) {
+               nread = SMB_VFS_SENDFILE(req->sconn->sock, fsp, &header,
+                                        startpos, smb_maxcnt);
+               if (nread == -1) {
                        /* Returning ENOSYS means no data at all was sent.
                           Do this as a normal read. */
                        if (errno == ENOSYS) {
@@ -3552,7 +3556,7 @@ normal_read:
                setup_readX_header(req, (char *)headerbuf, smb_maxcnt);
 
                /* Send out the header. */
-               if (write_data(smbd_server_fd(), (char *)headerbuf,
+               if (write_data(req->sconn->sock, (char *)headerbuf,
                               sizeof(headerbuf)) != sizeof(headerbuf)) {
                        DEBUG(0,("send_file_readX: write_data failed for file "
                                 "%s (%s). Terminating\n", fsp_str_dbg(fsp),
@@ -3870,7 +3874,7 @@ void reply_writebraw(struct smb_request *req)
        SCVAL(buf,smb_com,SMBwritebraw);
        SSVALS(buf,smb_vwv0,0xFFFF);
        show_msg(buf);
-       if (!srv_send_smb(smbd_server_fd(),
+       if (!srv_send_smb(req->sconn->sock,
                          buf,
                          false, 0, /* no signing */
                          IS_CONN_ENCRYPTED(conn),
@@ -3880,7 +3884,7 @@ void reply_writebraw(struct smb_request *req)
        }
 
        /* Now read the raw data into the buffer and write it */
-       status = read_smb_length(smbd_server_fd(), buf, SMB_SECONDARY_WAIT,
+       status = read_smb_length(req->sconn->sock, buf, SMB_SECONDARY_WAIT,
                                 &numtowrite);
        if (!NT_STATUS_IS_OK(status)) {
                exit_server_cleanly("secondary writebraw failed");
@@ -3904,7 +3908,7 @@ void reply_writebraw(struct smb_request *req)
                                (int)tcount,(int)nwritten,(int)numtowrite));
                }
 
-               status = read_data(smbd_server_fd(), buf+4, numtowrite);
+               status = read_data(req->sconn->sock, buf+4, numtowrite);
 
                if (!NT_STATUS_IS_OK(status)) {
                        DEBUG(0,("reply_writebraw: Oversize secondary write "
@@ -3964,7 +3968,7 @@ void reply_writebraw(struct smb_request *req)
                 * sending a SMBkeepalive. Thanks to DaveCB at Sun for this.
                 * JRA.
                 */
-               if (!send_keepalive(smbd_server_fd())) {
+               if (!send_keepalive(req->sconn->sock)) {
                        exit_server_cleanly("reply_writebraw: send of "
                                "keepalive failed");
                }