diff options
author | Volker Lendecke <vlendec@samba.org> | 2007-02-06 18:16:10 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:44:43 -0500 |
commit | 2342219d699eb17d48a2b31c297121a158ba85d0 (patch) | |
tree | beeccc37a4d67b91bd4f1bcfbe0fe7ebb68c46bf /source4/smb_server/smb | |
parent | 4aa1f83ca5629bb2a086c7431e8e96301f6af79f (diff) | |
download | samba-2342219d699eb17d48a2b31c297121a158ba85d0.tar.gz samba-2342219d699eb17d48a2b31c297121a158ba85d0.tar.bz2 samba-2342219d699eb17d48a2b31c297121a158ba85d0.zip |
r21183: Commit the big/little endian fix for nttrans setup[] handling.
Please check!
For code symmetry reasons, trans2 might also see this fix, but this is left to
the interested reader :-)
Volker
(This used to be commit f2d364ebe69fc5d624e456cc7d941071811a5567)
Diffstat (limited to 'source4/smb_server/smb')
-rw-r--r-- | source4/smb_server/smb/nttrans.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/source4/smb_server/smb/nttrans.c b/source4/smb_server/smb/nttrans.c index fce4fdc129..e85da29806 100644 --- a/source4/smb_server/smb/nttrans.c +++ b/source4/smb_server/smb/nttrans.c @@ -570,7 +570,6 @@ void smbsrv_reply_nttrans(struct smbsrv_request *req) { struct nttrans_op *op; struct smb_nttrans *trans; - int i; uint16_t param_ofs, data_ofs; uint16_t param_count, data_count; uint16_t param_total, data_total; @@ -617,9 +616,9 @@ void smbsrv_reply_nttrans(struct smbsrv_request *req) smbsrv_send_error(req, NT_STATUS_NO_MEMORY); return; } - for (i=0;i<trans->in.setup_count;i++) { - trans->in.setup[i] = SVAL(req->in.vwv, VWV(19+i)); - } + + memcpy(trans->in.setup, (char *)(req->in.vwv) + VWV(19), + sizeof(uint16_t) * trans->in.setup_count); if (!req_pull_blob(req, req->in.hdr + param_ofs, param_count, &trans->in.params) || !req_pull_blob(req, req->in.hdr + data_ofs, data_count, &trans->in.data)) { |