diff options
-rw-r--r-- | selftest/knownfail | 2 | ||||
-rw-r--r-- | source3/libsmb/clireadwrite.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/selftest/knownfail b/selftest/knownfail index a3518b8b62b..ba16fd72290 100644 --- a/selftest/knownfail +++ b/selftest/knownfail @@ -16,8 +16,6 @@ ^samba3.*rap.sam.*.useradd # Not provided by Samba 3 ^samba3.*rap.sam.*.userdelete # Not provided by Samba 3 ^samba3.libsmbclient.opendir # This requires a workgroup called 'WORKGROUP' and for netbios browse lists to have been registered -^samba3.smbtorture_s3.plain\(fileserver\).CLI_SPLICE -^samba3.smbtorture_s3.plain\(ad_dc_ntvfs\).CLI_SPLICE # see bug 8412 ^samba3.smb2.rename.*.simple_nodelete ^samba3.smb2.rename.*.no_share_delete_no_delete_access diff --git a/source3/libsmb/clireadwrite.c b/source3/libsmb/clireadwrite.c index 00ee09ece89..67870d8c40b 100644 --- a/source3/libsmb/clireadwrite.c +++ b/source3/libsmb/clireadwrite.c @@ -1462,8 +1462,10 @@ static NTSTATUS cli_splice_fallback(TALLOC_CTX *frame, *written = 0; while (remaining) { + size_t to_read = MIN(remaining, SPLICE_BLOCK_SIZE); + status = cli_read(srccli, src_fnum, - (char *)buf, src_offset, SPLICE_BLOCK_SIZE, + (char *)buf, src_offset, to_read, &nread); if (!NT_STATUS_IS_OK(status)) { return status; |