summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Sharpe <sharpe@samba.org>2003-01-01 21:54:00 +0000
committerRichard Sharpe <sharpe@samba.org>2003-01-01 21:54:00 +0000
commit5d6c1810330b38e48355078b7a5d53e7b5076f74 (patch)
tree23da26bb12b3bc7d9d378e4176ef8b2366b9369c
parent028f808c032becfa4618924cb301a4af2708fa96 (diff)
downloadsamba-5d6c1810330b38e48355078b7a5d53e7b5076f74.tar.gz
samba-5d6c1810330b38e48355078b7a5d53e7b5076f74.tar.xz
samba-5d6c1810330b38e48355078b7a5d53e7b5076f74.zip
Document the size constraints on a write request.
-rw-r--r--source/libsmb/clireadwrite.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/source/libsmb/clireadwrite.c b/source/libsmb/clireadwrite.c
index 187a40cadec..d35b0dfdfd9 100644
--- a/source/libsmb/clireadwrite.c
+++ b/source/libsmb/clireadwrite.c
@@ -284,10 +284,13 @@ static BOOL cli_issue_write(struct cli_state *cli, int fnum, off_t offset, uint1
SIVAL(cli->outbuf,smb_vwv5,0);
SSVAL(cli->outbuf,smb_vwv7,mode);
+ SSVAL(cli->outbuf,smb_vwv8,(mode & 0x0008) ? size : 0);
/*
- * THe following is still wrong ...
+ * According to CIFS-TR-1p00, this following field should only
+ * be set if CAP_LARGE_WRITEX is set. We should check this
+ * locally. However, this check might already have been
+ * done by our callers.
*/
- SSVAL(cli->outbuf,smb_vwv8,(mode & 0x0008) ? size : 0);
SSVAL(cli->outbuf,smb_vwv9,((size>>16)&1));
SSVAL(cli->outbuf,smb_vwv10,size);
SSVAL(cli->outbuf,smb_vwv11,