[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-785-g1937ab3

Andrew Tridgell tridge at samba.org
Tue Aug 4 00:02:42 MDT 2009


The branch, master has been updated
       via  1937ab3668e6a4667ac4334a6e1bea2cc75cfb1d (commit)
       via  ff388611f461b4a4ee044ce86aedda9ce18dfc97 (commit)
      from  57d690b6f693d9a90eb77404bbffc05a1c245972 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 1937ab3668e6a4667ac4334a6e1bea2cc75cfb1d
Merge: ff388611f461b4a4ee044ce86aedda9ce18dfc97 57d690b6f693d9a90eb77404bbffc05a1c245972
Author: Andrew Tridgell <tridge at samba.org>
Date:   Tue Aug 4 16:02:23 2009 +1000

    Merge branch 'master' of ssh://git.samba.org/data/git/samba

commit ff388611f461b4a4ee044ce86aedda9ce18dfc97
Author: Andrew Tridgell <tridge at samba.org>
Date:   Tue Aug 4 16:01:11 2009 +1000

    fixed support for readx greater than 64k
    
    This fixes bug 6547, where smbclient in S3 reads more than 64k at a
    time with readx.

-----------------------------------------------------------------------

Summary of changes:
 source4/ntvfs/posix/pvfs_read.c |    4 ++--
 source4/smb_server/smb/reply.c  |    3 ++-
 2 files changed, 4 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/ntvfs/posix/pvfs_read.c b/source4/ntvfs/posix/pvfs_read.c
index d9080d6..75fba3c 100644
--- a/source4/ntvfs/posix/pvfs_read.c
+++ b/source4/ntvfs/posix/pvfs_read.c
@@ -59,8 +59,8 @@ NTSTATUS pvfs_read(struct ntvfs_module_context *ntvfs,
 	}
 
 	maxcnt = rd->readx.in.maxcnt;
-	if (maxcnt > UINT16_MAX && req->ctx->protocol < PROTOCOL_SMB2) {
-		maxcnt = 0;
+	if (maxcnt > 2*UINT16_MAX && req->ctx->protocol < PROTOCOL_SMB2) {
+		return NT_STATUS_INVALID_PARAMETER;
 	}
 
 	status = pvfs_check_lock(pvfs, f, req->smbpid, 
diff --git a/source4/smb_server/smb/reply.c b/source4/smb_server/smb/reply.c
index ec7b678..0433d35 100644
--- a/source4/smb_server/smb/reply.c
+++ b/source4/smb_server/smb/reply.c
@@ -831,7 +831,8 @@ static void reply_read_and_X_send(struct ntvfs_request *ntvfs)
 	SMBSRV_VWV_RESERVED(4, 1);
 	SSVAL(req->out.vwv, VWV(5), io->readx.out.nread);
 	SSVAL(req->out.vwv, VWV(6), PTR_DIFF(io->readx.out.data, req->out.hdr));
-	SMBSRV_VWV_RESERVED(7, 5);
+	SSVAL(req->out.vwv, VWV(7), (io->readx.out.nread>>16));
+	SMBSRV_VWV_RESERVED(8, 4);
 
 	smbsrv_chain_reply(req);
 }


-- 
Samba Shared Repository


More information about the samba-cvs mailing list