#include "fs_rec.h"
#include <ntdddisk.h>
#include <ntddcdrm.h>
#include <debug.h>
Go to the source code of this file.
◆ NDEBUG
◆ FsRecGetDeviceSectors()
Definition at line 24 of file blockdev.c.
27{
35
36
38
39
44 0,
51
52
54
55
58 {
59
66 }
67
68
70
71
76}
#define NT_SUCCESS(StatCode)
#define KeWaitForSingleObject(pEvt, foo, a, b, c)
#define KeInitializeEvent(pEvt, foo, foo2)
NTSYSAPI LONGLONG WINAPI RtlExtendedLargeIntegerDivide(LONGLONG, INT, INT *)
static OUT PIO_STATUS_BLOCK IoStatusBlock
#define IOCTL_DISK_GET_PARTITION_INFO
PIRP NTAPI IoBuildDeviceIoControlRequest(IN ULONG IoControlCode, IN PDEVICE_OBJECT DeviceObject, IN PVOID InputBuffer, IN ULONG InputBufferLength, IN PVOID OutputBuffer, IN ULONG OutputBufferLength, IN BOOLEAN InternalDeviceIoControl, IN PKEVENT Event, IN PIO_STATUS_BLOCK IoStatusBlock)
_In_ PDEVICE_OBJECT DeviceObject
__drv_aliasesMem FORCEINLINE PIO_STACK_LOCATION IoGetNextIrpStackLocation(_In_ PIRP Irp)
_In_ ULONG _In_ struct _SET_PARTITION_INFORMATION_EX * PartitionInfo
#define SL_OVERRIDE_VERIFY_VOLUME
_In_ LARGE_INTEGER _Out_opt_ PLARGE_INTEGER Remainder
Referenced by FsRecNtfsFsControl().
◆ FsRecGetDeviceSectorSize()
Definition at line 80 of file blockdev.c.
82{
90
91
93 {
95
96
98 break;
99
101
102
104 break;
105
106 default:
107
108
110 }
111
112
117 0,
118 &DiskGeometry,
124
125
127
128
131 {
132
139 }
140
141
143
144
148}
#define IOCTL_DISK_GET_DRIVE_GEOMETRY
#define IOCTL_CDROM_GET_DRIVE_GEOMETRY
#define FILE_DEVICE_CD_ROM
_IRQL_requires_same_ typedef _In_ ULONG ControlCode
Referenced by FsRecBtrfsFsControl(), FsRecCdfsFsControl(), FsRecExt2FsControl(), FsRecFatxFsControl(), FsRecFfsFsControl(), FsRecNtfsFsControl(), FsRecReiserfsFsControl(), FsRecUdfsFsControl(), and FsRecVfatFsControl().
◆ FsRecReadBlock()
Definition at line 152 of file blockdev.c.
158{
164
165
166 if (DeviceError) *DeviceError =
FALSE;
167
168
170 {
171
173 }
174 else
175 {
176
178 }
179
180
182 {
183
188 }
189
190
200
201
203
204
207 {
208
215 }
216
217
219 {
220
221 if (DeviceError) *DeviceError =
TRUE;
223 }
224
225
227}
#define ExAllocatePoolWithTag(hernya, size, tag)
#define ROUND_UP(n, align)
_In_ ULONG _In_ ULONG Offset
_In_ ULONG _In_ ULONG _In_ ULONG Length
PIRP NTAPI IoBuildSynchronousFsdRequest(IN ULONG MajorFunction, IN PDEVICE_OBJECT DeviceObject, IN PVOID Buffer, IN ULONG Length, IN PLARGE_INTEGER StartingOffset, IN PKEVENT Event, IN PIO_STATUS_BLOCK IoStatusBlock)
#define ROUND_TO_PAGES(Size)
Referenced by FsRecBtrfsFsControl(), FsRecExt2FsControl(), FsRecFatxFsControl(), FsRecFfsFsControl(), FsRecIsCdfsVolume(), FsRecIsUdfsVolume(), FsRecNtfsFsControl(), FsRecReiserfsFsControl(), and FsRecVfatFsControl().