116 Irp->IoStatus.Information = 0;
136 Irp->IoStatus.Information = 0;
150 Irp->IoStatus.Information = 0;
170 Offset =
Stack->Parameters.Read.ByteOffset.LowPart;
200 DeviceExt->StorageDevice = DeviceToMount;
201 DeviceExt->StorageDevice->Vpb->DeviceObject =
DeviceObject;
202 DeviceExt->StorageDevice->Vpb->RealDevice = DeviceExt->StorageDevice;
203 DeviceExt->StorageDevice->Vpb->Flags |=
VPB_MOUNTED;
204 DeviceObject->StackSize = DeviceExt->StorageDevice->StackSize + 1;
230 Irp->IoStatus.Information = 0;
252 DbgPrint(
"Bare FSD Template 0.0.1\n");
static PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(PIRP Irp)
#define NT_SUCCESS(StatCode)
DRIVER_INITIALIZE DriverEntry
struct DEVICE_EXTENSION * PDEVICE_EXTENSION
NTSTATUS NTAPI FsdWrite(PDEVICE_OBJECT DeviceObject, PIRP Irp)
NTSTATUS NTAPI FsdReadFile(PDEVICE_EXTENSION DeviceExt, PFILE_OBJECT FileObject, PVOID Buffer, ULONG Length, ULONG Offset)
NTSTATUS NTAPI FsdMountDevice(PDEVICE_EXTENSION DeviceExt, PDEVICE_OBJECT DeviceToMount)
NTSTATUS NTAPI FsdClose(PDEVICE_OBJECT DeviceObject, PIRP Irp)
static PDRIVER_OBJECT DriverObject
NTSTATUS NTAPI FsdCloseFile(PDEVICE_EXTENSION DeviceExt, PFILE_OBJECT FileObject)
NTSTATUS NTAPI FsdCreate(PDEVICE_OBJECT DeviceObject, PIRP Irp)
NTSTATUS NTAPI FsdRead(PDEVICE_OBJECT DeviceObject, PIRP Irp)
NTSTATUS NTAPI FsdFileSystemControl(PDEVICE_OBJECT DeviceObject, PIRP Irp)
BOOLEAN NTAPI FsdHasFileSystem(PDEVICE_OBJECT DeviceToMount)
NTSTATUS NTAPI FsdOpenFile(PDEVICE_EXTENSION DeviceExt, PFILE_OBJECT FileObject, PWSTR FileName)
NTSTATUS FsdMount(PDEVICE_OBJECT DeviceToMount)
_In_ ULONG _In_ ULONG Offset
_In_ ULONG _In_ ULONG _In_ ULONG Length
NTSTATUS NTAPI IoCreateDevice(IN PDRIVER_OBJECT DriverObject, IN ULONG DeviceExtensionSize, IN PUNICODE_STRING DeviceName, IN DEVICE_TYPE DeviceType, IN ULONG DeviceCharacteristics, IN BOOLEAN Exclusive, OUT PDEVICE_OBJECT *DeviceObject)
#define IoCompleteRequest
VOID NTAPI IoRegisterFileSystem(IN PDEVICE_OBJECT DeviceObject)
#define FILE_DEVICE_FILE_SYSTEM
#define RTL_CONSTANT_STRING(s)
#define STATUS_UNRECOGNIZED_VOLUME
#define STATUS_UNSUCCESSFUL
_In_ PDEVICE_OBJECT DeviceObject
_In_ WDFREQUEST _In_ WDFFILEOBJECT FileObject
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_opt_ PCUNICODE_STRING DeviceName
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING RegistryPath
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
_In_ WDFREQUEST _In_ PIO_STACK_LOCATION Stack
#define IRP_MJ_FILE_SYSTEM_CONTROL
#define MmGetSystemAddressForMdl(Mdl)