NTSTATUS
NtfsOpenFile(PDEVICE_EXTENSION DeviceExt,
PFILE_OBJECT FileObject,
- PWSTR FileName)
+ PWSTR FileName,
+ PNTFS_FCB * FoundFCB)
{
PNTFS_FCB ParentFcb;
PNTFS_FCB Fcb;
NTSTATUS Status;
PWSTR AbsFileName = NULL;
- DPRINT("NtfsOpenFile(%p, %p, %S)\n", DeviceExt, FileObject, FileName);
+ DPRINT1("NtfsOpenFile(%p, %p, %S)\n", DeviceExt, FileObject, FileName);
+
+ *FoundFCB = NULL;
if (FileObject->RelatedFileObject)
{
if (AbsFileName)
ExFreePool(AbsFileName);
+ *FoundFCB = Fcb;
+
return Status;
}
PFILE_OBJECT FileObject;
ULONG RequestedDisposition;
ULONG RequestedOptions;
-// PFCB Fcb;
+ PNTFS_FCB Fcb;
// PWSTR FileName;
NTSTATUS Status;
- DPRINT("NtfsCreateFile() called\n");
+ DPRINT1("NtfsCreateFile(%p, %p) called\n", DeviceObject, Irp);
DeviceExt = DeviceObject->DeviceExtension;
ASSERT(DeviceExt);
Status = NtfsOpenFile(DeviceExt,
FileObject,
- FileObject->FileName.Buffer);
+ FileObject->FileName.Buffer,
+ &Fcb);
/*
* If the directory containing the file to open doesn't exist then