1
0
mirror of https://github.com/samba-team/samba.git synced 2025-11-04 00:23:49 +03:00

r3352: make smbcli_read() and smbcli_write() work with very small negotiated SMB buffer sizes

This commit is contained in:
Andrew Tridgell
2004-10-29 05:31:35 +00:00
committed by Gerald (Jerry) Carter
parent 1993128cb1
commit 320ca0214d

View File

@@ -42,8 +42,7 @@ ssize_t smbcli_read(struct smbcli_tree *tree, int fnum, char *buf, off_t offset,
* Set readsize to the maximum size we can handle in one readX,
* rounded down to a multiple of 1024.
*/
readsize = (tree->session->transport->negotiate.max_xmit -
(MIN_SMB_SIZE+32)) & ~1023;
readsize = (tree->session->transport->negotiate.max_xmit - (MIN_SMB_SIZE+32));
if (readsize > 0xFFFF) readsize = 0xFFFF;
while (total < size) {
@@ -87,7 +86,7 @@ ssize_t smbcli_write(struct smbcli_tree *tree,
const uint8_t *buf, off_t offset, size_t size)
{
union smb_write parms;
int block = (tree->session->transport->negotiate.max_xmit - (MIN_SMB_SIZE+32)) & ~1023;
int block = (tree->session->transport->negotiate.max_xmit - (MIN_SMB_SIZE+32));
ssize_t total = 0;
if (size == 0) {