summaryrefslogtreecommitdiff
path: root/source4/ntvfs
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2014-10-18 10:42:00 +0200
committerGünther Deschner <gd@samba.org>2015-07-03 02:00:28 +0200
commitebfb1e9dac55449c3bf3f3a13f61d2050631ccf5 (patch)
tree8ea2c8bf6127318ad8a60be774cfded62ed10d63 /source4/ntvfs
parentd1e81df36e8906a84ef374e91bf377a0589f100a (diff)
downloadsamba-ebfb1e9dac55449c3bf3f3a13f61d2050631ccf5.tar.gz
s4:ntvfs/ipc: fix ipc_close()
Until now this always returned NT_STATUS_INVALID_LEVEL for everything but RAW_CLOSE_CLOSE. Now it maps everything correctly to RAW_CLOSE_GENERIC. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
Diffstat (limited to 'source4/ntvfs')
-rw-r--r--source4/ntvfs/ipc/vfs_ipc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/source4/ntvfs/ipc/vfs_ipc.c b/source4/ntvfs/ipc/vfs_ipc.c
index 50f0e5995cb..a5f2bb1642c 100644
--- a/source4/ntvfs/ipc/vfs_ipc.c
+++ b/source4/ntvfs/ipc/vfs_ipc.c
@@ -737,11 +737,13 @@ static NTSTATUS ipc_close(struct ntvfs_module_context *ntvfs,
struct ipc_private);
struct pipe_state *p;
- if (io->generic.level != RAW_CLOSE_CLOSE) {
+ if (io->generic.level != RAW_CLOSE_GENERIC) {
return ntvfs_map_close(ntvfs, req, io);
}
- p = pipe_state_find(ipriv, io->close.in.file.ntvfs);
+ ZERO_STRUCT(io->generic.out);
+
+ p = pipe_state_find(ipriv, io->generic.in.file.ntvfs);
if (!p) {
return NT_STATUS_INVALID_HANDLE;
}