s3:smbd: pass smbXsrv_connection to reply_readbraw_error()
authorStefan Metzmacher <metze@samba.org>
Wed, 11 Jun 2014 12:51:05 +0000 (14:51 +0200)
committerMichael Adam <obnox@samba.org>
Wed, 6 Aug 2014 07:51:13 +0000 (09:51 +0200)
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
source3/smbd/reply.c

index 5371537b05f193129544fec6acb6d7398925fc5e..e286fc2d31f21280850b70550870e7a78ddc4dab 100644 (file)
@@ -3162,9 +3162,9 @@ void sendfile_short_send(files_struct *fsp,
  Return a readbraw error (4 bytes of zero).
 ****************************************************************************/
 
-static void reply_readbraw_error(struct smbd_server_connection *sconn)
+static void reply_readbraw_error(struct smbXsrv_connection *xconn)
 {
-       struct smbXsrv_connection *xconn = sconn->conn;
+       struct smbd_server_connection *sconn = xconn->sconn;
        char header[4];
 
        SIVAL(header,0,0);
@@ -3198,8 +3198,7 @@ static void send_file_readbraw(connection_struct *conn,
                               size_t nread,
                               ssize_t mincount)
 {
-       struct smbd_server_connection *sconn = req->sconn;
-       struct smbXsrv_connection *xconn = sconn->conn;
+       struct smbXsrv_connection *xconn = req->xconn;
        char *outbuf = NULL;
        ssize_t ret=0;
 
@@ -3282,7 +3281,7 @@ normal_readbraw:
        if (!outbuf) {
                DEBUG(0,("send_file_readbraw: talloc_array failed for size %u.\n",
                        (unsigned)(nread+4)));
-               reply_readbraw_error(sconn);
+               reply_readbraw_error(xconn);
                return;
        }
 
@@ -3322,8 +3321,7 @@ normal_readbraw:
 void reply_readbraw(struct smb_request *req)
 {
        connection_struct *conn = req->conn;
-       struct smbd_server_connection *sconn = req->sconn;
-       struct smbXsrv_connection *xconn = sconn->conn;
+       struct smbXsrv_connection *xconn = req->xconn;
        ssize_t maxcount,mincount;
        size_t nread = 0;
        off_t startpos;
@@ -3339,7 +3337,7 @@ void reply_readbraw(struct smb_request *req)
        }
 
        if (req->wct < 8) {
-               reply_readbraw_error(sconn);
+               reply_readbraw_error(xconn);
                END_PROFILE(SMBreadbraw);
                return;
        }
@@ -3347,7 +3345,7 @@ void reply_readbraw(struct smb_request *req)
        if (xconn->smb1.echo_handler.trusted_fde) {
                DEBUG(2,("SMBreadbraw rejected with NOT_SUPPORTED because of "
                         "'async smb echo handler = yes'\n"));
-               reply_readbraw_error(sconn);
+               reply_readbraw_error(xconn);
                END_PROFILE(SMBreadbraw);
                return;
        }
@@ -3375,7 +3373,7 @@ void reply_readbraw(struct smb_request *req)
                DEBUG(3,("reply_readbraw: fnum %d not valid "
                        "- cache prime?\n",
                        (int)SVAL(req->vwv+0, 0)));
-               reply_readbraw_error(sconn);
+               reply_readbraw_error(xconn);
                END_PROFILE(SMBreadbraw);
                return;
        }
@@ -3386,7 +3384,7 @@ void reply_readbraw(struct smb_request *req)
                                (fsp->access_mask & FILE_EXECUTE)))) {
                DEBUG(3,("reply_readbraw: fnum %d not readable.\n",
                                (int)SVAL(req->vwv+0, 0)));
-               reply_readbraw_error(sconn);
+               reply_readbraw_error(xconn);
                END_PROFILE(SMBreadbraw);
                return;
        }
@@ -3405,7 +3403,7 @@ void reply_readbraw(struct smb_request *req)
                        DEBUG(0,("reply_readbraw: negative 64 bit "
                                "readraw offset (%.0f) !\n",
                                (double)startpos ));
-                       reply_readbraw_error(sconn);
+                       reply_readbraw_error(xconn);
                        END_PROFILE(SMBreadbraw);
                        return;
                }
@@ -3422,7 +3420,7 @@ void reply_readbraw(struct smb_request *req)
            &lock);
 
        if (!SMB_VFS_STRICT_LOCK(conn, fsp, &lock)) {
-               reply_readbraw_error(sconn);
+               reply_readbraw_error(xconn);
                END_PROFILE(SMBreadbraw);
                return;
        }