43 DPRINT(
"pVdHeader->Type verified!\n");
48 DPRINT(
"pVdHeader->Identifier verified!\n");
53 DPRINT(
"pVdHeader->Version verified! This is a CDFS volume!\n");
77 switch (
Stack->MinorFunction)
85 MountDevice =
Stack->Parameters.MountVolume.DeviceObject;
102 L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\Cdfs");
static PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(PIRP Irp)
BOOLEAN NTAPI FsRecIsCdfsVolume(IN PDEVICE_OBJECT DeviceObject, IN ULONG SectorSize)
NTSTATUS NTAPI FsRecCdfsFsControl(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
#define VD_IDENTIFIER_LENGTH
static const WCHAR Cleanup[]
#define RtlCompareMemory(s1, s2, l)
BOOLEAN NTAPI FsRecReadBlock(IN PDEVICE_OBJECT DeviceObject, IN PLARGE_INTEGER Offset, IN ULONG Length, IN ULONG SectorSize, IN OUT PVOID *Buffer, OUT PBOOLEAN DeviceError OPTIONAL)
BOOLEAN NTAPI FsRecGetDeviceSectorSize(IN PDEVICE_OBJECT DeviceObject, OUT PULONG SectorSize)
NTSTATUS NTAPI FsRecLoadFileSystem(IN PDEVICE_OBJECT DeviceObject, IN PWCHAR DriverServiceName)
_In_ ULONG _In_ ULONG Offset
#define STATUS_FS_DRIVER_REQUIRED
#define STATUS_INVALID_DEVICE_REQUEST
#define STATUS_UNRECOGNIZED_VOLUME
_In_ PDEVICE_OBJECT DeviceObject
_In_ WDFREQUEST _In_ PIO_STACK_LOCATION Stack
#define IRP_MN_LOAD_FILE_SYSTEM
#define IRP_MN_MOUNT_VOLUME