From 0afb2995a2177afa2eb7b8f99887a39cdaf23a15 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Wed, 10 Nov 2010 17:59:05 -0800 Subject: 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 Autobuild-Date: Thu Nov 11 02:50:08 UTC 2010 on sn-devel-104 --- source3/libsmb/clireadwrite.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'source3/libsmb') 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++; } -- cgit