diff options
author | Andrew Tridgell <tridge@samba.org> | 2006-09-23 02:19:15 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:19:16 -0500 |
commit | 921f73c7e58eac1900eb7ec9f7276cd3afaf0480 (patch) | |
tree | 3c56f53bb45d494b3e08978712f302e4bee5cfd9 | |
parent | 45ca27699c018423364a1307b241d6034de1332d (diff) | |
download | samba-921f73c7e58eac1900eb7ec9f7276cd3afaf0480.tar.gz samba-921f73c7e58eac1900eb7ec9f7276cd3afaf0480.tar.bz2 samba-921f73c7e58eac1900eb7ec9f7276cd3afaf0480.zip |
r18835: expand IO limits on SMB2. Samba4 now tops out at 16.7MB IOs.
(This used to be commit 1e34e4d5a1fd3d74080424140e4ab276b6042d12)
-rw-r--r-- | source4/libcli/raw/interfaces.h | 2 | ||||
-rw-r--r-- | source4/ntvfs/ntvfs_generic.c | 6 | ||||
-rw-r--r-- | source4/ntvfs/posix/pvfs_read.c | 2 | ||||
-rw-r--r-- | source4/torture/smb2/maxwrite.c | 4 |
4 files changed, 4 insertions, 10 deletions
diff --git a/source4/libcli/raw/interfaces.h b/source4/libcli/raw/interfaces.h index d3e7611c75..c2f0c3530b 100644 --- a/source4/libcli/raw/interfaces.h +++ b/source4/libcli/raw/interfaces.h @@ -1589,7 +1589,7 @@ union smb_read { uint8_t *data; uint16_t remaining; uint16_t compaction_mode; - uint16_t nread; + uint32_t nread; } out; } readx, generic; diff --git a/source4/ntvfs/ntvfs_generic.c b/source4/ntvfs/ntvfs_generic.c index aff05b70a8..aa6edcdf42 100644 --- a/source4/ntvfs/ntvfs_generic.c +++ b/source4/ntvfs/ntvfs_generic.c @@ -1266,12 +1266,6 @@ _PUBLIC_ NTSTATUS ntvfs_map_read(struct ntvfs_module_context *ntvfs, break; case RAW_READ_SMB2: - if (rd->smb2.in.length > UINT16_MAX) { - DEBUG(0,("%s: mapping SMB2 => generic length to large %u!\n", - __FUNCTION__, rd->smb2.in.length)); - status = NT_STATUS_FOOBAR; - goto done; - } rd2->readx.in.file.ntvfs= rd->smb2.in.file.ntvfs; rd2->readx.in.offset = rd->smb2.in.offset; rd2->readx.in.mincnt = rd->smb2.in.length; diff --git a/source4/ntvfs/posix/pvfs_read.c b/source4/ntvfs/posix/pvfs_read.c index 13e8264000..c36d8ca2a3 100644 --- a/source4/ntvfs/posix/pvfs_read.c +++ b/source4/ntvfs/posix/pvfs_read.c @@ -59,7 +59,7 @@ NTSTATUS pvfs_read(struct ntvfs_module_context *ntvfs, } maxcnt = rd->readx.in.maxcnt; - if (maxcnt > UINT16_MAX) { + if (maxcnt > UINT16_MAX && req->ctx->protocol < PROTOCOL_SMB2) { maxcnt = 0; } diff --git a/source4/torture/smb2/maxwrite.c b/source4/torture/smb2/maxwrite.c index b9ca46437d..1d64d1d359 100644 --- a/source4/torture/smb2/maxwrite.c +++ b/source4/torture/smb2/maxwrite.c @@ -37,7 +37,7 @@ static NTSTATUS torture_smb2_write(TALLOC_CTX *mem_ctx, struct smb2_read r; NTSTATUS status; int i, len; - int max = 10000000; + int max = 80000000; int min = 1; while (max > min) { @@ -94,7 +94,7 @@ static NTSTATUS torture_smb2_write(TALLOC_CTX *mem_ctx, printf("converged: len=%d\n", max); - return status; + return NT_STATUS_OK; } |