diff options
author | Derrell Lipman <derrell.lipman@unwireduniverse.com> | 2008-01-15 13:58:47 +0000 |
---|---|---|
committer | Derrell Lipman <derrell.lipman@unwireduniverse.com> | 2008-01-15 13:58:47 +0000 |
commit | 9788383a6c08189564cd18a824aab4ccdbe57a21 (patch) | |
tree | e93ab7b1007d79e951f69a1495ac7e474536eb25 /source3/libsmb/clireadwrite.c | |
parent | 011e89c85868ec8f16e475a560a0e5bd41995920 (diff) | |
parent | 97f61b542c0e6b1f25ed08fa36792fd90a981e0e (diff) | |
download | samba-9788383a6c08189564cd18a824aab4ccdbe57a21.tar.gz samba-9788383a6c08189564cd18a824aab4ccdbe57a21.tar.bz2 samba-9788383a6c08189564cd18a824aab4ccdbe57a21.zip |
Merge branch 'v3-2-test' of git://git.samba.org/samba into v3-2-test
(This used to be commit 3a61e663e51fe620225691bc8673bf8800a36f47)
Diffstat (limited to 'source3/libsmb/clireadwrite.c')
-rw-r--r-- | source3/libsmb/clireadwrite.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/source3/libsmb/clireadwrite.c b/source3/libsmb/clireadwrite.c index 0b33e43563..6b39a885f0 100644 --- a/source3/libsmb/clireadwrite.c +++ b/source3/libsmb/clireadwrite.c @@ -404,6 +404,9 @@ ssize_t cli_write(struct cli_state *cli, mpx = 1; } + /* Default (small) writesize. */ + writesize = (cli->max_xmit - (smb_size+32)) & ~1023; + if (write_mode == 0 && !client_is_signing_on(cli) && !cli_encryption_on(cli) && @@ -415,11 +418,11 @@ ssize_t cli_write(struct cli_state *cli, } else if (cli->capabilities & CAP_LARGE_WRITEX) { if (cli->is_samba) { writesize = CLI_SAMBA_MAX_LARGE_WRITEX_SIZE; - } else { + } else if (!client_is_signing_on(cli)) { + /* Windows restricts signed writes to max_xmit. + * Found by Volker. */ writesize = CLI_WINDOWS_MAX_LARGE_WRITEX_SIZE; } - } else { - writesize = (cli->max_xmit - (smb_size+32)) & ~1023; } blocks = (size + (writesize-1)) / writesize; |