From f9fdeaa8f47585870b13f7dbe65b697ee8c7e9bb Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Tue, 26 Oct 2004 09:31:11 +0000 Subject: r3255: - fixed 2 uninitialised data errors found with valgrind - fixed offset of setup words in nttrans reply (This used to be commit 86b5118c2ae605560a196ee014b6134ec2928c5b) --- source4/ntvfs/posix/pvfs_ioctl.c | 3 ++- source4/smb_server/nttrans.c | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) (limited to 'source4') diff --git a/source4/ntvfs/posix/pvfs_ioctl.c b/source4/ntvfs/posix/pvfs_ioctl.c index 4feca8979f..3eb016c5b4 100644 --- a/source4/ntvfs/posix/pvfs_ioctl.c +++ b/source4/ntvfs/posix/pvfs_ioctl.c @@ -50,6 +50,7 @@ static NTSTATUS pvfs_ntioctl(struct ntvfs_module_context *ntvfs, case FSCTL_SET_SPARSE: /* maybe some posix systems have a way of marking a file non-sparse? */ + io->ntioctl.out.blob = data_blob(NULL, 0); return NT_STATUS_OK; } @@ -62,7 +63,7 @@ static NTSTATUS pvfs_ntioctl(struct ntvfs_module_context *ntvfs, NTSTATUS pvfs_ioctl(struct ntvfs_module_context *ntvfs, struct smbsrv_request *req, union smb_ioctl *io) { - NTSTATUS status; + NTSTATUS status = NT_STATUS_UNSUCCESSFUL; switch (io->generic.level) { case RAW_IOCTL_IOCTL: diff --git a/source4/smb_server/nttrans.c b/source4/smb_server/nttrans.c index 9e2b16c30e..5a5d9f77e3 100644 --- a/source4/smb_server/nttrans.c +++ b/source4/smb_server/nttrans.c @@ -221,6 +221,8 @@ void reply_nttrans(struct smbsrv_request *req) req_grow_data(req, this_param + this_data + (align1 + align2)); + SSVAL(req->out.vwv, 0, 0); /* reserved */ + SCVAL(req->out.vwv, 2, 0); /* reserved */ SIVAL(req->out.vwv, 3, trans.out.params.length); SIVAL(req->out.vwv, 7, trans.out.data.length); @@ -235,7 +237,7 @@ void reply_nttrans(struct smbsrv_request *req) SCVAL(req->out.vwv, 35, trans.out.setup_count); for (i=0;iout.vwv, VWV(18+i)+1, trans.out.setup[i]); + SSVAL(req->out.vwv, VWV(18+i), trans.out.setup[i]); } memset(req->out.data, 0, align1); -- cgit