ReactOS  0.4.15-dev-2993-g14fbe80
aux_klib.h
Go to the documentation of this file.
1 /*
2  * aux_klib.h
3  *
4  * Auxiliary Kernel-Mode Library
5  *
6  * Contributors:
7  * Victor Perevertkin <victor.perevertkin@reactos.org>
8  *
9  * THIS SOFTWARE IS NOT COPYRIGHTED
10  *
11  * This source code is offered for use in the public domain. You may
12  * use, modify or distribute it freely.
13  *
14  * This code is distributed in the hope that it will be useful but
15  * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
16  * DISCLAIMED. This includes but is not limited to warranties of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18  *
19  */
20 
21 #pragma once
22 
23 #ifndef PIMAGE_EXPORT_DIRECTORY
24 #include <ntimage.h>
25 #endif
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
31 #define AUX_KLIB_MODULE_PATH_LEN 0x100
32 
33 typedef struct _AUX_MODULE_BASIC_INFO {
36 
37 typedef struct _AUX_MODULE_EXTENDED_INFO {
43 
44 typedef struct _KBUGCHECK_DATA {
52 
53 CODE_SEG("PAGE")
55 NTAPI
57 
59 CODE_SEG("PAGE")
61 NTAPI
63  _Inout_ PULONG InformationLength,
66 
70 
73  _In_ PVOID ImageBase);
74 
76 CODE_SEG("PAGE")
78 NTAPI
79 AuxKlibEnumerateSystemFirmwareTables (
80  _In_ ULONG FirmwareTableProviderSignature,
84 
86 CODE_SEG("PAGE")
88 NTAPI
89 AuxKlibGetSystemFirmwareTable (
90  _In_ ULONG FirmwareTableProviderSignature,
95 
96 #ifdef __cplusplus
97 }
98 #endif
NTSTATUS NTAPI AuxKlibInitialize(VOID)
Definition: aux_klib.c:26
struct _KBUGCHECK_DATA * PKBUGCHECK_DATA
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
Definition: wdfdevice.h:3767
ULONG BugCheckDataSize
Definition: aux_klib.h:45
_In_ ULONG _Out_opt_ PULONG ReturnLength
Definition: aux_klib.h:82
#define _Inout_
Definition: ms_sal.h:378
NTSTATUS NTAPI AuxKlibQueryModuleInformation(_In_ PULONG InformationLength, _In_ ULONG SizePerModule, _Inout_ PAUX_MODULE_EXTENDED_INFO ModuleInfo)
Definition: aux_klib.c:53
char CHAR
Definition: xmlstorage.h:175
LONG NTSTATUS
Definition: precomp.h:26
_IRQL_requires_max_(PASSIVE_LEVEL) NTSTATUS NTAPI AuxKlibQueryModuleInformation(_Inout_ PULONG InformationLength
Definition: Messaging.c:64
struct _KBUGCHECK_DATA KBUGCHECK_DATA
_Out_writes_bytes_to_opt_(BufferLength, *ReturnLength) PVOID FirmwareTableBuffer
uint32_t ULONG_PTR
Definition: typedefs.h:65
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
_In_ ULONG _Out_writes_bytes_opt_ InformationLength PAUX_MODULE_EXTENDED_INFO ModuleInfo
Definition: aux_klib.h:65
#define _In_
Definition: ms_sal.h:308
#define _Out_writes_bytes_opt_(size)
Definition: ms_sal.h:351
struct _AUX_MODULE_EXTENDED_INFO AUX_MODULE_EXTENDED_INFO
struct _AUX_MODULE_EXTENDED_INFO * PAUX_MODULE_EXTENDED_INFO
static tBugCheckData BugCheckData
_In_ ULONG FirmwareTableID
Definition: aux_klib.h:91
ULONG_PTR Parameter4
Definition: aux_klib.h:50
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
_In_ ULONG SizePerModule
Definition: aux_klib.h:64
ULONG_PTR Parameter1
Definition: aux_klib.h:47
PIMAGE_EXPORT_DIRECTORY AuxKlibGetImageExportDirectory(_In_ PVOID ImageBase)
Definition: aux_klib.c:196
ULONG_PTR Parameter3
Definition: aux_klib.h:49
ULONG_PTR Parameter2
Definition: aux_klib.h:48
#define AUX_KLIB_MODULE_PATH_LEN
Definition: aux_klib.h:31
struct _AUX_MODULE_BASIC_INFO * PAUX_MODULE_BASIC_INFO
struct _AUX_MODULE_BASIC_INFO AUX_MODULE_BASIC_INFO
CHAR FullPathName[AUX_KLIB_MODULE_PATH_LEN]
Definition: aux_klib.h:41
unsigned short USHORT
Definition: pedump.c:61
#define _Out_opt_
Definition: ms_sal.h:346
unsigned int * PULONG
Definition: retypes.h:1
NTSTATUS AuxKlibGetBugCheckData(_Inout_ PKBUGCHECK_DATA BugCheckData)
Definition: aux_klib.c:178
AUX_MODULE_BASIC_INFO BasicInfo
Definition: aux_klib.h:38
unsigned int ULONG
Definition: retypes.h:1
static CODE_SEG("PAGE")
Definition: isapnp.c:1482
ULONG BugCheckCode
Definition: aux_klib.h:46