summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2008-03-12 15:12:26 +0100
committerStefan Metzmacher <metze@samba.org>2008-03-12 17:14:44 +0100
commitf533d6d8a255298ba191daa1a2c41c6228c85aa4 (patch)
treea241cfff591f23677dfd9af5353dfac6818c21b2
parent23ab56cd80239bc7d31917cfca4488ef9f633992 (diff)
downloadsamba-f533d6d8a255298ba191daa1a2c41c6228c85aa4.tar.gz
samba-f533d6d8a255298ba191daa1a2c41c6228c85aa4.tar.bz2
samba-f533d6d8a255298ba191daa1a2c41c6228c85aa4.zip
pvfs_rename: implement RAW_RENAME_NTTRANS as noop as w2k3
metze (This used to be commit 40563583f7ef3d8d1a3426c6c12eaecd18af215c)
-rw-r--r--source4/ntvfs/posix/pvfs_rename.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/source4/ntvfs/posix/pvfs_rename.c b/source4/ntvfs/posix/pvfs_rename.c
index e94de8b28e..5c2a627084 100644
--- a/source4/ntvfs/posix/pvfs_rename.c
+++ b/source4/ntvfs/posix/pvfs_rename.c
@@ -568,6 +568,9 @@ static NTSTATUS pvfs_rename_nt(struct ntvfs_module_context *ntvfs,
NTSTATUS pvfs_rename(struct ntvfs_module_context *ntvfs,
struct ntvfs_request *req, union smb_rename *ren)
{
+ struct pvfs_state *pvfs = ntvfs->private_data;
+ struct pvfs_file *f;
+
switch (ren->generic.level) {
case RAW_RENAME_RENAME:
return pvfs_rename_mv(ntvfs, req, ren);
@@ -576,7 +579,13 @@ NTSTATUS pvfs_rename(struct ntvfs_module_context *ntvfs,
return pvfs_rename_nt(ntvfs, req, ren);
case RAW_RENAME_NTTRANS:
- return NT_STATUS_NOT_IMPLEMENTED;
+ f = pvfs_find_fd(pvfs, req, ren->nttrans.in.file.ntvfs);
+ if (!f) {
+ return NT_STATUS_INVALID_HANDLE;
+ }
+
+ /* wk23 ignores the request */
+ return NT_STATUS_OK;
default:
break;