s3: libsmbclient: Fix cli_splice() fallback when reading less than a complete file.
authorJeremy Allison <jra@samba.org>
Thu, 12 Jul 2018 19:18:50 +0000 (12:18 -0700)
committerDavid Disseldorp <ddiss@samba.org>
Fri, 13 Jul 2018 12:57:14 +0000 (14:57 +0200)
commitc9656fd2977557ab20ec4e3d87c385a9b2f1bf43
tree884a2f41695959a532192187d6db5fc2862ebe7d
parent1c8d1cceff852acaca4a0ec0da37b053ed03fe4a
s3: libsmbclient: Fix cli_splice() fallback when reading less than a complete file.

We were always asking for SPLICE_BLOCK_SIZE even when the
remaining bytes we wanted were smaller than that. This works
when using cli_splice() on a complete file, as the cli_read()
terminated the read at the right place. We always have the
space to read SPLICE_BLOCK_SIZE bytes so this isn't an overflow.

Found by Bailey Berro <baileyberro@google.com>

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13527

Signed-off-by: Bailey Berro <baileyberro@google.com>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Autobuild-User(master): David Disseldorp <ddiss@samba.org>
Autobuild-Date(master): Fri Jul 13 14:57:14 CEST 2018 on sn-devel-144
selftest/knownfail
source3/libsmb/clireadwrite.c