git.samba.org
/
samba.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
00cabb2
)
Test against W2K that we're doing large read/writes correctly (we are).
author
Jeremy Allison
<jra@samba.org>
Wed, 20 Mar 2002 01:43:06 +0000
(
01:43
+0000)
committer
Jeremy Allison
<jra@samba.org>
Wed, 20 Mar 2002 01:43:06 +0000
(
01:43
+0000)
At least with 14 word writes.
Jeremy.
source/libsmb/clireadwrite.c
patch
|
blob
|
history
diff --git
a/source/libsmb/clireadwrite.c
b/source/libsmb/clireadwrite.c
index 627bab88a52e0b16ddb1740fbf63b9268cb36b3d..402de726e8dc06b1bc72dbcd82f441b2e907ad22 100644
(file)
--- a/
source/libsmb/clireadwrite.c
+++ b/
source/libsmb/clireadwrite.c
@@
-223,6
+223,14
@@
static BOOL cli_issue_write(struct cli_state *cli, int fnum, off_t offset, uint1
{
char *p;
+ if (size > cli->bufsize) {
+ cli->outbuf = realloc(cli->outbuf, size + 1024);
+ cli->inbuf = realloc(cli->inbuf, size + 1024);
+ if (cli->outbuf == NULL || cli->inbuf == NULL)
+ return False;
+ cli->bufsize = size + 1024;
+ }
+
memset(cli->outbuf,'\0',smb_size);
memset(cli->inbuf,'\0',smb_size);
@@
-300,6
+308,7
@@
ssize_t cli_write(struct cli_state *cli,
break;
bwritten += SVAL(cli->inbuf, smb_vwv2);
+ bwritten += (((int)(SVAL(cli->inbuf, smb_vwv4)))>>16);
}
while (received < issued && cli_receive_smb(cli))