WDK Mini Filter Example
|
#include <fltKernel.h>
#include <dontuse.h>
#include <suppress.h>
#include "utility.h"
#include "context.h"
#include "scan.h"
#include "csvfs.h"
#include "avlib.h"
Go to the source code of this file.
Data Structures | |
struct | _AV_SCAN_CONTEXT |
struct | _AV_SCANNER_GLOBAL_DATA |
Macros | |
#define | RTL_USE_AVL_TABLES |
#define | AV_VISTA (NTDDI_VERSION >= NTDDI_VISTA) |
#define | AV_DBG_PRINT(_dbgLevel, _string) {NOTHING;} |
Typedefs | |
typedef struct _AV_SCAN_CONTEXT | AV_SCAN_CONTEXT |
typedef struct _AV_SCAN_CONTEXT * | PAV_SCAN_CONTEXT |
typedef struct _AV_SCANNER_GLOBAL_DATA | AV_SCANNER_GLOBAL_DATA |
typedef struct _AV_SCANNER_GLOBAL_DATA * | PAV_SCANNER_GLOBAL_DATA |
Functions | |
FORCEINLINE VOID | AvCancelFileOpen (_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ NTSTATUS Status) |
NTSTATUS | AvPrepareServerPort (_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ AVSCAN_CONNECTION_TYPE ConnectionType) |
NTSTATUS | AvSendAbortToUser (_In_ ULONG ScanThreadId, _In_ LONGLONG ScanId) |
NTSTATUS | AvAllocateScanContext (_In_ PFLT_INSTANCE Instance, _In_ PFILE_OBJECT FileObject, _Outptr_ PAV_SCAN_CONTEXT *ScanContext) |
NTSTATUS | AvReferenceScanContext (_In_ PAV_SCAN_CONTEXT ScanContext) |
NTSTATUS | AvReleaseScanContext (_In_ PAV_SCAN_CONTEXT ScanContext) |
NTSTATUS | AvFinalizeScanAndSection (_Inout_ PAV_SCAN_CONTEXT ScanContext) |
NTSTATUS | AvFinalizeSectionContext (_Inout_ PAV_SECTION_CONTEXT SectionContext) |
VOID | AvFinalizeScanContext (_Inout_ PAV_SCAN_CONTEXT ScanContext, _Outptr_result_maybenull_ PAV_SECTION_CONTEXT *SectionContext) |
Variables | |
AV_SCANNER_GLOBAL_DATA | Globals |
Macro Definition Documentation
◆ AV_DBG_PRINT
◆ AV_VISTA
◆ RTL_USE_AVL_TABLES
Typedef Documentation
◆ AV_SCAN_CONTEXT
typedef struct _AV_SCAN_CONTEXT AV_SCAN_CONTEXT |
◆ AV_SCANNER_GLOBAL_DATA
typedef struct _AV_SCANNER_GLOBAL_DATA AV_SCANNER_GLOBAL_DATA |
◆ PAV_SCAN_CONTEXT
typedef struct _AV_SCAN_CONTEXT * PAV_SCAN_CONTEXT |
◆ PAV_SCANNER_GLOBAL_DATA
typedef struct _AV_SCANNER_GLOBAL_DATA * PAV_SCANNER_GLOBAL_DATA |
Function Documentation
◆ AvAllocateScanContext()
NTSTATUS AvAllocateScanContext | ( | _In_ PFLT_INSTANCE | Instance, |
_In_ PFILE_OBJECT | FileObject, | ||
_Outptr_ PAV_SCAN_CONTEXT * | ScanContext | ||
) |
Definition at line 787 of file avscan/filter/context.c.
◆ AvCancelFileOpen()
FORCEINLINE VOID AvCancelFileOpen | ( | _Inout_ PFLT_CALLBACK_DATA | Data, |
_In_ PCFLT_RELATED_OBJECTS | FltObjects, | ||
_In_ NTSTATUS | Status | ||
) |
◆ AvFinalizeScanAndSection()
NTSTATUS AvFinalizeScanAndSection | ( | _Inout_ PAV_SCAN_CONTEXT | ScanContext | ) |
Definition at line 874 of file communication.c.
◆ AvFinalizeScanContext()
VOID AvFinalizeScanContext | ( | _Inout_ PAV_SCAN_CONTEXT | ScanContext, |
_Outptr_result_maybenull_ PAV_SECTION_CONTEXT * | SectionContext | ||
) |
Definition at line 913 of file communication.c.
◆ AvFinalizeSectionContext()
NTSTATUS AvFinalizeSectionContext | ( | _Inout_ PAV_SECTION_CONTEXT | SectionContext | ) |
Definition at line 975 of file communication.c.
◆ AvPrepareServerPort()
NTSTATUS AvPrepareServerPort | ( | _In_ PSECURITY_DESCRIPTOR | SecurityDescriptor, |
_In_ AVSCAN_CONNECTION_TYPE | ConnectionType | ||
) |
Definition at line 1335 of file communication.c.
◆ AvReferenceScanContext()
NTSTATUS AvReferenceScanContext | ( | _In_ PAV_SCAN_CONTEXT | ScanContext | ) |
Definition at line 855 of file avscan/filter/context.c.
◆ AvReleaseScanContext()
NTSTATUS AvReleaseScanContext | ( | _In_ PAV_SCAN_CONTEXT | ScanContext | ) |
Definition at line 892 of file avscan/filter/context.c.
◆ AvSendAbortToUser()
NTSTATUS AvSendAbortToUser | ( | _In_ ULONG | ScanThreadId, |
_In_ LONGLONG | ScanId | ||
) |
Definition at line 1650 of file filter/avscan.c.
Variable Documentation
◆ Globals
AV_SCANNER_GLOBAL_DATA Globals |
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