smb_server/smb: trans(2) setup count is uint8_t
authorStefan Metzmacher <metze@samba.org>
Mon, 7 Jul 2008 12:00:53 +0000 (14:00 +0200)
committerStefan Metzmacher <metze@samba.org>
Mon, 7 Jul 2008 16:10:08 +0000 (18:10 +0200)
metze

source/smb_server/smb/trans2.c

index 5d206f9ea8a7e8a0ea398d094f54f4a1519d15fa..6dd69de436c176c73b64a3b36a40583be980695f 100644 (file)
@@ -64,7 +64,7 @@ struct trans_op {
 /* setup a trans2 reply, given the data and params sizes */
 static NTSTATUS trans2_setup_reply(struct smb_trans2 *trans,
                                   uint16_t param_size, uint16_t data_size,
-                                  uint16_t setup_count)
+                                  uint8_t setup_count)
 {
        trans->out.setup_count = setup_count;
        if (setup_count > 0) {
@@ -1157,7 +1157,8 @@ static void reply_trans_send(struct ntvfs_request *ntvfs)
                      PTR_DIFF(this_req->out.data + this_param, this_req->out.hdr));
                SSVAL(this_req->out.vwv, VWV(8), PTR_DIFF(data, trans->out.data.data));
 
-               SSVAL(this_req->out.vwv, VWV(9), trans->out.setup_count);
+               SCVAL(this_req->out.vwv, VWV(9), trans->out.setup_count);
+               SCVAL(this_req->out.vwv, VWV(9)+1, 0); /* reserved */
                for (i=0;i<trans->out.setup_count;i++) {
                        SSVAL(this_req->out.vwv, VWV(10+i), trans->out.setup[i]);
                }