ntvfs/cifs: fix the fnum on RAW_RENAME_NTTRANS
authorStefan Metzmacher <metze@samba.org>
Wed, 12 Mar 2008 16:34:16 +0000 (17:34 +0100)
committerStefan Metzmacher <metze@samba.org>
Wed, 12 Mar 2008 16:35:03 +0000 (17:35 +0100)
metze
(This used to be commit b43f1a53dd185cc51a3fb8a18e311abb77c2a7c9)

source4/ntvfs/cifs/vfs_cifs.c

index 58183b5e6031093b39fcb6e9e517edb801643658..3c090b5f5c65a9991709a45c9ca3884c493aa978 100644 (file)
@@ -595,6 +595,13 @@ static NTSTATUS cvfs_rename(struct ntvfs_module_context *ntvfs,
 
        SETUP_PID;
 
+       if (ren->nttrans.level == RAW_RENAME_NTTRANS) {
+               struct cvfs_file *f;
+               f = ntvfs_handle_get_backend_data(ren->nttrans.in.file.ntvfs, ntvfs);
+               if (!f) return NT_STATUS_INVALID_HANDLE;
+               ren->nttrans.in.file.fnum = f->fnum;
+       }
+
        if (!(req->async_states->state & NTVFS_ASYNC_STATE_MAY_ASYNC)) {
                return smb_raw_rename(private->tree, ren);
        }