WDK Mini Filter Example
|
nc.h
Go to the documentation of this file.
18 #define NC_NORMALIZE_NAME_TAG 'NCnn' // Tag for strings which are allocated for name normalization
19 #define NC_FILE_NAME_TAG 'NCfn' // Tag for strings which are allocated for file names in file objects
20 #define NC_DIR_QRY_CACHE_TAG 'NCqc' // Tag for buffers which are allocated for directory enumeration cache and injection entries
21 #define NC_DIR_QRY_SEARCH_STRING 'NCqs' // Tag for strings which are allocated for directory search strings
320 Merge
493 _In_opt_ PFILE_OBJECT FileObject,
NTSTATUS(* NC_CREATE_FILE_EX2_TYPE)(_In_ PFLT_FILTER Filter, _In_opt_ PFLT_INSTANCE Instance, _Out_ PHANDLE FileHandle, _Outptr_opt_ PFILE_OBJECT *FileObject, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_opt_ PLARGE_INTEGER AllocationSize, _In_ ULONG FileAttributes, _In_ ULONG ShareAccess, _In_ ULONG CreateDisposition, _In_ ULONG CreateOptions, _In_reads_bytes_opt_(EaLength) PVOID EaBuffer, _In_ ULONG EaLength, _In_ ULONG Flags, _In_opt_ PIO_DRIVER_CREATE_CONTEXT DriverContext)
Definition: nc.h:108
NTSTATUS NcSetCancelCompletion(_In_ PFLT_CALLBACK_DATA Data, _In_ PFLT_COMPLETE_CANCELED_CALLBACK CanceledCallback)
Definition: nchelper.c:270
UNICODE_STRING UserMappingFinalComponentLong
Definition: nc.h:470
Definition: nc.h:306
UNICODE_STRING UserMappingFinalComponentShort
Definition: nc.h:469
_Success_ Copied ULONG NcCopyDirEnumEntry(_Out_ PVOID UserBuffer, _In_ ULONG UserOffset, _In_ ULONG UserSize, _Inout_ PNC_CACHE_ENTRY Entry, _In_ PDIRECTORY_CONTROL_OFFSETS Offsets, _Out_ PBOOLEAN Copied)
Definition: ncdirenum.c:1034
NTSTATUS NcStreamHandleContextAllocAndAttach(_In_ PFLT_FILTER Filter, _In_ PFLT_INSTANCE Instance, _In_ PFILE_OBJECT FileObject, _Out_ PNC_STREAM_HANDLE_CONTEXT *Context)
Definition: nccontext.c:126
struct _NC_GLOBAL_DATA * PNC_GLOBAL_DATA
struct _NC_MAPPING * PNC_MAPPING
PFLT_GENERIC_WORKITEM RealParentCloseWorkItem
Definition: nc.h:383
NTSTATUS NcInitializeMapping(_In_ PUNICODE_STRING RegistryPath)
Definition: ncinit.c:282
struct _NC_MAPPING_PATH * PNC_MAPPING_PATH
PNC_CACHE_ENTRY NcDirEnumSelectNextEntry(_Inout_ PNC_DIR_QRY_CONTEXT Context, _In_ PDIRECTORY_CONTROL_OFFSETS Offsets, _In_ BOOLEAN IgnoreCase)
Definition: ncdirenum.c:920
FLT_PREOP_CALLBACK_STATUS NcEnumerateDirectory(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _Flt_CompletionContext_Outptr_ PVOID *CompletionContext)
Definition: ncdirenum.c:39
NTSTATUS NcNormalizeNameComponentEx(_In_ PFLT_INSTANCE Instance, _In_opt_ PFILE_OBJECT FileObject, _In_ PCUNICODE_STRING ParentDirectory, _In_ USHORT DeviceNameLength, _In_ PCUNICODE_STRING Component, _Out_writes_bytes_(ExpandComponentNameLength) PFILE_NAMES_INFORMATION ExpandComponentName, _In_ ULONG ExpandComponentNameLength, _In_ FLT_NORMALIZE_NAME_FLAGS Flags, _Inout_ PVOID *NormalizationContext)
Definition: ncnameprov.c:342
FLT_POSTOP_CALLBACK_STATUS NcPostQueryName(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_opt_ PVOID CompletionContext, _In_ FLT_POST_OPERATION_FLAGS Flags)
Definition: ncfileinfo.c:33
VOID NcSetNextEntryOffset(_Inout_ PVOID Buffer, _In_ CONST PDIRECTORY_CONTROL_OFFSETS Offsets, _In_ BOOLEAN ForceLast)
Definition: ncoffsets.c:470
Definition: nc.h:246
struct _DIRECTORY_CONTROL_OFFSETS * PDIRECTORY_CONTROL_OFFSETS
struct _NC_FIND_BY_SID_CONTEXT NC_FIND_BY_SID_CONTEXT
PVOID(* NC_GET_NEW_SYSTEM_BUFFER_ADDRESS)(_In_ PFLT_CALLBACK_DATA Data)
Definition: nc.h:129
NC_GET_NEW_SYSTEM_BUFFER_ADDRESS NcGetNewSystemBufferAddress
Definition: nccompat.c:81
FLT_POSTOP_CALLBACK_STATUS NcPostReadFileUsnData(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_opt_ PVOID CompletionContext, _In_ FLT_POST_OPERATION_FLAGS Flags)
Definition: ncfsctrl.c:2520
FLT_PREOP_CALLBACK_STATUS NcPreSetDisposition(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _Flt_CompletionContext_Outptr_ PVOID *CompletionContext)
Definition: ncfileinfo.c:1189
FLT_POSTOP_CALLBACK_STATUS NcPostNotifyDirectory(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ PVOID CompletionContext, _In_ FLT_POST_OPERATION_FLAGS Flags)
Definition: ncdirnotify.c:2824
NC_DIR_QRY_CONTEXT DirectoryQueryContext
Definition: nc.h:439
struct _NC_STREAM_HANDLE_CONTEXT * PNC_STREAM_HANDLE_CONTEXT
NC_REPLACE_FILEOBJECT_NAME_TYPE NcReplaceFileObjectName
Definition: nccompat.c:78
FLT_POSTOP_CALLBACK_STATUS NcPostReadUsnJournal(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_opt_ PVOID CompletionContext, _In_ FLT_POST_OPERATION_FLAGS Flags)
Definition: ncfsctrl.c:3576
Definition: nc.h:184
struct _NC_DIR_NOT_IO_CACHE NC_DIR_NOT_IO_CACHE
NTSTATUS NcBuildMappingPathFromVolume(_In_ PFLT_VOLUME CONST Volume, _In_ PUNICODE_STRING ParentPath, _In_ PUNICODE_STRING FinalComponentName, _Inout_ PNC_MAPPING_PATH Entry)
Definition: ncmapping.c:376
NTSTATUS NcGenerateFileName(_In_ PFLT_INSTANCE Instance, _In_ PFILE_OBJECT FileObject, _In_opt_ PFLT_CALLBACK_DATA Data, _In_ FLT_FILE_NAME_OPTIONS NameOptions, _Out_ PBOOLEAN CacheFileNameInformation, _Inout_ PFLT_NAME_CONTROL FileName)
Definition: ncnameprov.c:10
NTSTATUS NcEnumerateDirectorySetupInjection(_Inout_ PNC_DIR_QRY_CONTEXT DirQryCtx, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ PNC_INSTANCE_CONTEXT InstanceContext, _In_ PDIRECTORY_CONTROL_OFFSETS Offsets, _In_ FILE_INFORMATION_CLASS InformationClass)
Definition: ncdirenum.c:463
struct _NC_DIR_NOT_CONTEXT NC_DIR_NOT_CONTEXT
FLT_PREOP_CALLBACK_STATUS NcPreRename(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _Flt_CompletionContext_Outptr_ PVOID *CompletionContext)
Definition: ncfileinfo.c:1621
union NC_PATH_OVERLAP * PNC_PATH_OVERLAP
FLT_POSTOP_CALLBACK_STATUS NcPostEnumUsnData(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_opt_ PVOID CompletionContext, _In_ FLT_POST_OPERATION_FLAGS Flags)
Definition: ncfsctrl.c:2906
_When_(Data==NULL, _Pre_satisfies_(FileObject !=NULL &&Instance !=NULL)) _When_(FileObject
FLT_POSTOP_CALLBACK_STATUS NcPostFindFilesBySid(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ PVOID CompletionContext, _In_ FLT_POST_OPERATION_FLAGS Flags)
Definition: ncfsctrl.c:1092
FLT_PREOP_CALLBACK_STATUS NcPreSetLinkInformation(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _Flt_CompletionContext_Outptr_ PVOID *CompletionContext)
Definition: ncfileinfo.c:1377
Definition: nc.h:319
struct _NC_INSTANCE_CONTEXT NC_INSTANCE_CONTEXT
BOOLEAN NcDetermineStructureOffsets(_Out_ PDIRECTORY_CONTROL_OFFSETS Offsets, _In_ FILE_INFORMATION_CLASS Information)
Definition: ncoffsets.c:52
VOID NcStreamHandleContextNotCleanup(_In_ PNC_STREAM_HANDLE_CONTEXT HandleContext)
Definition: ncdirnotify.c:3325
Definition: nc.h:318
struct _NC_FIND_BY_SID_CONTEXT * PNC_FIND_BY_SID_CONTEXT
VOID NcStreamHandleContextClose(_In_ PFLT_CONTEXT Context, _In_ FLT_CONTEXT_TYPE ContextType)
Definition: nccontext.c:65
_Pre_satisfies_(Data !=NULL)) NTSTATUS NcGetFileNameInformation(_In_opt_ PFLT_CALLBACK_DATA Data
Definition: nc.h:230
PVOID NcGetNextEntry(_In_ CONST PVOID Buffer, _In_ CONST PDIRECTORY_CONTROL_OFFSETS Offsets)
Definition: ncoffsets.c:269
_At_(String->Length, _Out_range_(==, 0)) _At_(String -> MaximumLength, _In_) _At_(String->Buffer, _Pre_maybenull_ _Post_notnull_ _Post_writable_byte_size_(String->MaximumLength)) NTSTATUS CtxAllocateUnicodeString(_Out_ PUNICODE_STRING String)
Definition: ctx/support.c:84
NTSTATUS NcParseFinalComponent(_In_ PUNICODE_STRING EntirePath, _Out_ PUNICODE_STRING ParentPath, _Out_ PUNICODE_STRING FinalComponent)
Definition: ncpath.c:572
NC_FIND_BY_SID_CONTEXT FindBySidContext
Definition: nc.h:440
_In_opt_ PFILE_OBJECT _In_opt_ PFLT_INSTANCE _In_ FLT_FILE_NAME_OPTIONS NameOptions
Definition: nc.h:493
NTSTATUS NcPerformEnumeration()
FLT_FILESYSTEM_TYPE VolumeFilesystemType
Definition: nc.h:236
NTSTATUS NcStreamHandleContextEnumSetup(_Inout_ PNC_DIR_QRY_CONTEXT DirContext, _In_ PNC_INSTANCE_CONTEXT InstanceContext, _In_ PDIRECTORY_CONTROL_OFFSETS Offsets, _In_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ NC_PATH_OVERLAP UserMappingOverlap, _Out_ PBOOLEAN FirstUsage)
Definition: ncdirenum.c:1172
FLT_POSTOP_CALLBACK_STATUS NcPostQueryHardLinks(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_opt_ PVOID CompletionContext, _In_ FLT_POST_OPERATION_FLAGS Flags)
Definition: ncfileinfo.c:581
BOOLEAN NcSkipName(_In_ PDIRECTORY_CONTROL_OFFSETS Offsets, _In_ PNC_DIR_QRY_CONTEXT Context, _In_ NC_PATH_OVERLAP RealOverlap, _In_ PNC_MAPPING Mapping, _In_ BOOLEAN IgnoreCase)
Definition: ncdirenum.c:714
NTSTATUS NcStreamHandleContextDirEnumCreate(_Out_ PNC_DIR_QRY_CONTEXT Context)
Definition: ncdirenum.c:1132
struct _DIRECTORY_CONTROL_OFFSETS DIRECTORY_CONTROL_OFFSETS
NTSTATUS NcStreamHandleContextFindBySidCreate(_Out_ PNC_FIND_BY_SID_CONTEXT Context)
Definition: ncfsctrl.c:75
VOID NcStreamHandleContextFindBySidClose(_In_ PNC_FIND_BY_SID_CONTEXT Context)
Definition: ncfsctrl.c:113
NTSTATUS(* NC_REPLACE_FILEOBJECT_NAME_TYPE)(_In_ PFILE_OBJECT FileObject, _In_reads_bytes_(FileNameLength) PWSTR NewFileName, _In_ USHORT FileNameLength)
Definition: nc.h:66
struct _NC_STREAM_HANDLE_CONTEXT NC_STREAM_HANDLE_CONTEXT
_In_opt_ PFILE_OBJECT _In_opt_ PFLT_INSTANCE _In_ FLT_FILE_NAME_OPTIONS _Outptr_ PFLT_FILE_NAME_INFORMATION * FileNameInformation
Definition: nc.h:493
_In_ PLARGE_INTEGER _In_ ULONG _In_ ULONG _Out_writes_bytes_(Length)
Definition: CdoOperations.c:1888
FLT_PREOP_CALLBACK_STATUS NcPreNotifyDirectory(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _Flt_CompletionContext_Outptr_ PVOID *CompletionContext)
Definition: ncdirnotify.c:1067
_In_ PLARGE_INTEGER _In_ ULONG _In_ ULONG _In_reads_bytes_(Length)
Definition: CdoOperations.c:1975
VOID NcSetFileName(_In_ PVOID Entry, _In_ PWSTR NewName, _In_ ULONG Length, _In_ CONST PDIRECTORY_CONTROL_OFFSETS Offsets, _In_ BOOLEAN ForceLast)
Definition: ncoffsets.c:527
Definition: nc.h:214
Definition: nc.h:467
NTSTATUS NcAllocateEResource(_Out_ PERESOURCE *OutputLock)
Definition: nchelper.c:104
Definition: nc.h:390
ULONG NcGetNextEntryOffset(_In_ CONST PVOID Buffer, _In_ CONST PDIRECTORY_CONTROL_OFFSETS Offsets)
Definition: ncoffsets.c:240
struct __NC_CACHE_ENTRY * PNC_CACHE_ENTRY
_Post_satisfies_(NewName->MaximumLength< MAXUSHORT) _Post_satisfies_(NewName -> Length<=NewName->MaximumLength) _Must_inspect_result_ NTSTATUS NcConstructPath(_In_ PNC_MAPPING_ENTRY RealPath, _In_ PUNICODE_STRING Remainder, _In_ BOOLEAN IncludeVolume, _Out_ _At_(NewName->Buffer, __drv_allocatesMem(Mem)) PUNICODE_STRING NewName)
Definition: ncpath.c:439
struct __NC_CACHE_ENTRY NC_CACHE_ENTRY
VOID NcInstanceContextClose(_In_ PFLT_CONTEXT Context, _In_ FLT_CONTEXT_TYPE ContextType)
Definition: nccontext.c:31
NC_DIR_NOT_CONTEXT DirectoryNotificationContext
Definition: nc.h:438
struct _NC_MAPPING NC_MAPPING
Definition: nc.h:434
VOID NcStreamHandleContextNotClose(_In_ PNC_DIR_NOT_CONTEXT DirContext)
Definition: ncdirnotify.c:3423
FLT_PREOP_CALLBACK_STATUS NcPreCreate(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _Flt_CompletionContext_Outptr_ PVOID *CompletionContext)
Definition: nccreate.c:29
ULONG NcGetEntrySize(_In_ CONST PVOID Buffer, _In_ CONST PDIRECTORY_CONTROL_OFFSETS Offsets)
Definition: ncoffsets.c:328
Definition: nc.h:274
VOID NcStreamHandleContextEnumClose(_In_ PNC_DIR_QRY_CONTEXT DirContext)
Definition: ncdirenum.c:1374
_Success_(IoStatus->Status==0) BOOLEAN CdoFastIoQueryBasicInfo(_In_ PFILE_OBJECT FileObject
NTSTATUS NcBuildMapping(_In_ PFILE_OBJECT UserParent, _In_ PFILE_OBJECT RealParent, _In_ PUNICODE_STRING UserFinalComponentShortName, _In_ PUNICODE_STRING UserFinalComponentLongName, _In_ PUNICODE_STRING RealFinalComponentName, _In_ PFLT_INSTANCE Instance, _Out_ PNC_MAPPING Mapping)
Definition: ncmapping.c:698
BOOLEAN NcComparePath(_In_ PCUNICODE_STRING Name, _In_ PNC_MAPPING_ENTRY Mapping, _Out_opt_ PUNICODE_STRING Remainder, _In_ BOOLEAN IgnoreCase, _In_ BOOLEAN ContainsDevice, _Out_ PNC_PATH_OVERLAP Overlap)
Definition: ncpath.c:13
PWSTR NcGetShortName(_In_ CONST PVOID Buffer, _In_ CONST PDIRECTORY_CONTROL_OFFSETS Offsets)
Definition: ncoffsets.c:396
VOID NcEnumerateDirectoryReset(_Inout_ PNC_DIR_QRY_CONTEXT dirCtx)
Definition: ncdirenum.c:682
VOID NcCalculateDirectoryNotificationOffsets(PDIRECTORY_CONTROL_OFFSETS Offsets)
Definition: ncoffsets.c:201
struct _NC_GLOBAL_DATA NC_GLOBAL_DATA
struct _NC_DIR_QRY_CONTEXT * PNC_DIR_QRY_CONTEXT
struct _NC_INSTANCE_CONTEXT * PNC_INSTANCE_CONTEXT
PWSTR NcGetFileName(_In_ CONST PVOID Buffer, _In_ CONST PDIRECTORY_CONTROL_OFFSETS Offsets)
Definition: ncoffsets.c:368
Definition: nc.h:141
LONG NcExceptionFilter(_In_ PEXCEPTION_POINTERS ExceptionPointer, _In_ BOOLEAN AccessingUserBuffer)
Definition: nchelper.c:322
struct _NC_DIR_NOT_IO_CACHE * PNC_DIR_NOT_IO_CACHE
CCHAR NcGetShortNameLength(_In_ CONST PVOID Buffer, _In_ CONST PDIRECTORY_CONTROL_OFFSETS Offsets)
Definition: ncoffsets.c:432
NTSTATUS(* NC_QUERY_DIRECTORY_FILE_TYPE)(_In_ PFLT_INSTANCE Instance, _In_ PFILE_OBJECT FileObject, _Out_writes_bytes_(Length) PVOID FileInformation, _In_ ULONG Length, _In_ FILE_INFORMATION_CLASS FileInformationClass, _In_ BOOLEAN ReturnSingleEntry, _In_opt_ PUNICODE_STRING FileName, _In_ BOOLEAN RestartScan, _Out_opt_ PULONG LengthReturned)
Definition: nc.h:74
NTSTATUS(* NC_CREATE_FILE_EX_TYPE)(_In_ PFLT_FILTER Filter, _In_opt_ PFLT_INSTANCE Instance, _Out_ PHANDLE FileHandle, _Outptr_opt_ PFILE_OBJECT *FileObject, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_opt_ PLARGE_INTEGER AllocationSize, _In_ ULONG FileAttributes, _In_ ULONG ShareAccess, _In_ ULONG CreateDisposition, _In_ ULONG CreateOptions, _In_reads_bytes_opt_(EaLength) PVOID EaBuffer, _In_ ULONG EaLength, _In_ ULONG Flags)
Definition: nc.h:88
struct _NC_MAPPING_ENTRY * PNC_MAPPING_ENTRY
struct _NC_MAPPING_ENTRY NC_MAPPING_ENTRY
Definition: nc.h:455
FLT_PREOP_CALLBACK_STATUS NcPreQueryAlternateName(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _Flt_CompletionContext_Outptr_ PVOID *CompletionContext)
Definition: ncfileinfo.c:367
NTSTATUS NcCreateFileHelper(_In_ PFLT_FILTER Filter, _In_opt_ PFLT_INSTANCE Instance, _Out_ PHANDLE FileHandle, _Outptr_opt_ PFILE_OBJECT *FileObject, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_opt_ PLARGE_INTEGER AllocationSize, _In_ ULONG FileAttributes, _In_ ULONG ShareAccess, _In_ ULONG CreateDisposition, _In_ ULONG CreateOptions, _In_reads_bytes_opt_(EaLength) PVOID EaBuffer, _In_ ULONG EaLength, _In_ ULONG Flags, _In_opt_ PFILE_OBJECT ParentFileObject)
Definition: nchelper.c:195
NTSTATUS NcPopulateCacheEntry(_In_ PFLT_INSTANCE Instance, _In_ PFILE_OBJECT FileObject, _In_ ULONG BufferLength, _In_ FILE_INFORMATION_CLASS FileInfoClass, _In_ PUNICODE_STRING SearchString, _In_ BOOLEAN RestartScan, _Out_ PNC_CACHE_ENTRY Cache)
Definition: ncdirenum.c:809
NTSTATUS NcStreamHandleContextNotCreate(_Out_ PNC_DIR_NOT_CONTEXT Context)
Definition: ncdirnotify.c:3276
USHORT NumberComponentsInVolumePath
Definition: nc.h:162
Definition: nc.h:317
VOID NcSetShortName(_In_ PVOID Entry, _In_ PWSTR NewShortName, _In_ USHORT Length, _In_ CONST PDIRECTORY_CONTROL_OFFSETS Offsets)
Definition: ncoffsets.c:587
Definition: nc.h:154
struct _NC_MAPPING_PATH NC_MAPPING_PATH
UNICODE_STRING RealMappingFinalComponent
Definition: nc.h:473
ULONG NcGetFileNameLength(_In_ CONST PVOID Buffer, _In_ CONST PDIRECTORY_CONTROL_OFFSETS Offsets)
Definition: ncoffsets.c:299
FLT_PREOP_CALLBACK_STATUS NcPreSetShortName(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _Flt_CompletionContext_Outptr_ PVOID *CompletionContext)
Definition: ncfileinfo.c:999
struct _NC_DIR_NOT_CONTEXT * PNC_DIR_NOT_CONTEXT
struct _NC_DIR_QRY_CONTEXT NC_DIR_QRY_CONTEXT
FLT_PREOP_CALLBACK_STATUS NcPreFindFilesBySid(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _Flt_CompletionContext_Outptr_ PVOID *CompletionContext)
Definition: ncfsctrl.c:587
Definition: nc.h:170
VOID NcTeardownMappingPath(_Inout_ PNC_MAPPING_PATH Path)
Definition: ncmapping.c:155
Services Overview
Architect, implement and test file system filter drivers for a wide range of functionality. We can offer several levels of assistance to meet your specific.
Contact Us
You are welcome to contact us for salse or partnership.
Sales: sales@easefilter.com
Support: support@easefilter.com
Info: info@easefilter.com