1817{
1824
1826
1829
1830
1838
1839
1841
1842
1844 0,
1851 {
1852 DPRINT1(
"fltmgr IoCreateDevice failed. Status = %X\n",
Status);
1854 }
1855
1856
1858
1859
1863
1864
1867
1868
1871
1872
1876
1879
1880
1884 &RawFileObject,
1885 &RawDeviceObject);
1887 {
1890 }
1891
1895 &RawFileObject,
1896 &RawDeviceObject);
1898 {
1901 }
1902
1903
1906
1908
1910 {
1912 {
1915 }
1916
1918
1921
1924 }
1925
1927}
DRIVER_FS_NOTIFICATION FltpFsNotification
static NTSTATUS SetupDispatchAndCallbacksTables(_In_ PDRIVER_OBJECT DriverObject)
#define FILE_DEVICE_SECURE_OPEN
#define RTL_CONSTANT_STRING(s)
static const WCHAR Cleanup[]
#define ExAllocatePoolWithTag(hernya, size, tag)
NTSTATUS ExInitializeResourceLite(PULONG res)
#define DO_DEVICE_INITIALIZING
#define InitializeListHead(ListHead)
#define ClearFlag(_F, _SF)
#define FM_TAG_REGISTRY_DATA
#define FM_TAG_DISPATCH_TABLE
NTSTATUS FltpSetupCommunicationObjects(_In_ PDRIVER_OBJECT DriverObject)
#define ExFreePoolWithTag(_P, _T)
NTSYSAPI VOID NTAPI RtlCopyUnicodeString(PUNICODE_STRING DestinationString, PUNICODE_STRING SourceString)
#define FILE_READ_ATTRIBUTES
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
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)
VOID NTAPI IoDeleteDevice(IN PDEVICE_OBJECT DeviceObject)
NTSTATUS NTAPI IoGetDeviceObjectPointer(IN PUNICODE_STRING ObjectName, IN ACCESS_MASK DesiredAccess, OUT PFILE_OBJECT *FileObject, OUT PDEVICE_OBJECT *DeviceObject)
NTSTATUS NTAPI IoCreateSymbolicLink(IN PUNICODE_STRING SymbolicLinkName, IN PUNICODE_STRING DeviceName)
NTSTATUS NTAPI IoDeleteSymbolicLink(IN PUNICODE_STRING SymbolicLinkName)
NTSTATUS NTAPI IoRegisterFsRegistrationChange(IN PDRIVER_OBJECT DriverObject, IN PDRIVER_FS_NOTIFICATION DriverNotificationRoutine)
#define STATUS_DEVICE_ALREADY_ATTACHED
#define FILE_DEVICE_DISK_FILE_SYSTEM
PDRIVER_OBJECT DriverObject
UNICODE_STRING ServiceKey
PFAST_IO_DISPATCH FastIoDispatch
FAST_MUTEX FilterAttachLock
PDEVICE_OBJECT DeviceObject
#define RtlZeroMemory(Destination, Length)
#define STATUS_INSUFFICIENT_RESOURCES
_In_ PDEVICE_OBJECT DeviceObject
_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_ PVOID _Out_opt_ PULONG_PTR _Outptr_opt_ PCUNICODE_STRING * ObjectName
FORCEINLINE VOID ExInitializeFastMutex(_Out_ PFAST_MUTEX FastMutex)
#define ObDereferenceObject