svn commit: samba r2784 - in branches/SAMBA_4_0/source/smb_server: .
tridge at samba.org
tridge at samba.org
Sat Oct 2 12:16:46 GMT 2004
Author: tridge
Date: 2004-10-02 12:16:46 +0000 (Sat, 02 Oct 2004)
New Revision: 2784
WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/branches/SAMBA_4_0/source/smb_server&rev=2784&nolog=1
Log:
- fixed alignment of ascii directory listings
- fixed minimum parameter size for ascii qpathinfo call
Modified:
branches/SAMBA_4_0/source/smb_server/trans2.c
Changeset:
Modified: branches/SAMBA_4_0/source/smb_server/trans2.c
===================================================================
--- branches/SAMBA_4_0/source/smb_server/trans2.c 2004-10-02 12:14:23 UTC (rev 2783)
+++ branches/SAMBA_4_0/source/smb_server/trans2.c 2004-10-02 12:16:46 UTC (rev 2784)
@@ -192,7 +192,19 @@
trans2_grow_data(req, trans, offset + ret);
}
+/*
+ align the end of the data section of a trans reply on an even boundary
+*/
+static void trans2_align_data(struct smbsrv_request *req, struct smb_trans2 *trans)
+{
+ if ((trans->out.data.length & 1) == 0) {
+ return;
+ }
+ trans2_grow_data(req, trans, trans->out.data.length+1);
+ SCVAL(trans->out.data.data, trans->out.data.length-1, 0);
+}
+
/*
trans2 qfsinfo implementation
*/
@@ -623,7 +635,7 @@
uint16_t level;
/* make sure we got enough parameters */
- if (trans->in.params.length < 8) {
+ if (trans->in.params.length < 2) {
return NT_STATUS_FOOBAR;
}
@@ -997,6 +1009,7 @@
24, STR_UNICODE | STR_LEN8BIT);
trans2_append_data_string(req, trans, &file->both_directory_info.name,
ofs + 60, STR_TERMINATE_ASCII);
+ trans2_align_data(req, trans);
data = trans->out.data.data + ofs;
SIVAL(data, 0, trans->out.data.length - ofs);
break;
More information about the samba-cvs
mailing list