summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2010-11-10 17:59:05 -0800
committerJeremy Allison <jra@samba.org>2010-11-11 02:50:08 +0000
commit0afb2995a2177afa2eb7b8f99887a39cdaf23a15 (patch)
tree476742645f0c8144d903752edb4438528ea35b71
parentac0ffba004160693ea5829775d732146ef261c47 (diff)
downloadsamba-0afb2995a2177afa2eb7b8f99887a39cdaf23a15.tar.gz
samba-0afb2995a2177afa2eb7b8f99887a39cdaf23a15.tar.bz2
samba-0afb2995a2177afa2eb7b8f99887a39cdaf23a15.zip
Fix bug #7791 - gvfsd-smb (Gnome vfs) fails to copy files from a SMB share using SMB signing.
The underlying problem is that the old code invoked by cli_write() increments cli->mid directly when issuing outstanding writes. This should now be done only in libsmb/clientgen.c to make metze's new signing engine works correctly. Just deleting this code fixes the problem. Jeremy. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Thu Nov 11 02:50:08 UTC 2010 on sn-devel-104
-rw-r--r--source3/libsmb/clireadwrite.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/source3/libsmb/clireadwrite.c b/source3/libsmb/clireadwrite.c
index 370c068fe4..cd95b17f80 100644
--- a/source3/libsmb/clireadwrite.c
+++ b/source3/libsmb/clireadwrite.c
@@ -703,8 +703,7 @@ static bool cli_issue_write(struct cli_state *cli,
off_t offset,
uint16 mode,
const char *buf,
- size_t size,
- int i)
+ size_t size)
{
char *p;
bool large_writex = false;
@@ -778,8 +777,6 @@ static bool cli_issue_write(struct cli_state *cli,
cli_setup_bcc(cli, p+size);
}
- SSVAL(cli->outbuf,smb_mid,cli->mid + i);
-
show_msg(cli->outbuf);
if (direct_writes) {
/* For direct writes we now need to write the data
@@ -828,7 +825,7 @@ ssize_t cli_write(struct cli_state *cli,
if (!cli_issue_write(cli, fnum, offset + bsent,
write_mode,
buf + bsent,
- size1, issued))
+ size1))
return -1;
issued++;
}