summaryrefslogtreecommitdiff
path: root/source3/libsmb
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2008-12-19 16:11:14 +0100
committerVolker Lendecke <vl@samba.org>2008-12-19 16:13:27 +0100
commit398ef0fb855b3b2d6e55ae26304589fd89110628 (patch)
tree98c3c4be01dc1b6a61afb5466928f3350ff00d38 /source3/libsmb
parent98c4055bcba17cde81345947d61fa2faae108654 (diff)
downloadsamba-398ef0fb855b3b2d6e55ae26304589fd89110628.tar.gz
samba-398ef0fb855b3b2d6e55ae26304589fd89110628.tar.bz2
samba-398ef0fb855b3b2d6e55ae26304589fd89110628.zip
For large smbwrite&x, we need more than 64k bcc
Diffstat (limited to 'source3/libsmb')
-rw-r--r--source3/libsmb/async_smb.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/source3/libsmb/async_smb.c b/source3/libsmb/async_smb.c
index 3b7442a680..a5ce505908 100644
--- a/source3/libsmb/async_smb.c
+++ b/source3/libsmb/async_smb.c
@@ -234,7 +234,7 @@ static bool find_andx_cmd_ofs(char *buf, size_t *pofs)
bool smb_splice_chain(char **poutbuf, uint8_t smb_command,
uint8_t wct, const uint16_t *vwv,
size_t bytes_alignment,
- uint16_t num_bytes, const uint8_t *bytes)
+ uint32_t num_bytes, const uint8_t *bytes)
{
char *outbuf;
size_t old_size, new_size;
@@ -274,7 +274,7 @@ bool smb_splice_chain(char **poutbuf, uint8_t smb_command,
new_size += bytes_padding + num_bytes;
- if (new_size > 0xffff) {
+ if ((smb_command != SMBwriteX) && (new_size > 0xffff)) {
DEBUG(1, ("splice_chain: %u bytes won't fit\n",
(unsigned)new_size));
return false;
@@ -417,7 +417,7 @@ static struct async_req *cli_request_chain(TALLOC_CTX *mem_ctx,
uint8_t additional_flags,
uint8_t wct, const uint16_t *vwv,
size_t bytes_alignment,
- uint16_t num_bytes,
+ uint32_t num_bytes,
const uint8_t *bytes)
{
struct async_req **tmp_reqs;
@@ -606,7 +606,7 @@ struct async_req *cli_request_send(TALLOC_CTX *mem_ctx,
uint8_t additional_flags,
uint8_t wct, const uint16_t *vwv,
size_t bytes_alignment,
- uint16_t num_bytes, const uint8_t *bytes)
+ uint32_t num_bytes, const uint8_t *bytes)
{
struct async_req *result;
bool uncork = false;