Go to the source code of this file.
Classes | |
struct | _errid |
struct | _errdata |
struct | _errinfo |
struct | _infoblk |
Defines | |
#define | STATUS_IOE_MESSAGE 0x11111111 |
#define | STATUS_IOE_MODULE_ALREADY_REGISTERED 0x22222222 |
#define | STATUS_IOE_DATABASE_NOT_READY 0x44444444 |
#define | MAX_MSG_LEN 1023 |
#define | IOEDATA_NONE 0x00000000 |
#define | IOEDATA_PRIVATE 0x00000001 |
#define | IOEDATA_WSTRING 0x00000002 |
#define | IOEDATA_MAX IOEDATA_WSTRING |
#define | IOEDATA_TEXT 0x80000000 |
#define | IOEDATATAG_TYPE_MASK 0x000000ff |
#define | IOEDATATAG_TYPE_DEVNODE 0x00000001 |
#define | IOEDATATAG_BITS IOEDATATAG_TYPE_MASK |
#define | SIG_ERRINFO 'IRRE' |
#define | SIG_INFOBLK 'KLBI' |
Typedefs | |
typedef _errid | ERRID |
typedef _errid * | PERRID |
typedef _errdata | ERRDATA |
typedef _errdata * | PERRDATA |
typedef _errinfo | ERRINFO |
typedef _errinfo * | PERRINFO |
typedef _infoblk | INFOBLK |
typedef _infoblk * | PINFOBLK |
typedef NTSTATUS(* | PERRHANDLER )(PVOID, ULONG) |
Functions | |
HANDLE | IoErrInitErrLogByIrp (IN PIRP Irp, IN ULONG ulFlags) |
HANDLE | IoErrInitErrLogByThreadID (IN PKTHREAD ThreadID, IN ULONG ulFlags) |
VOID | IoErrLogErrByIrp (IN PIRP Irp, IN CONST GUID *ComponentGuid, IN ULONG ErrCode, IN PWSTR TextData OPTIONAL, IN ULONG DataBlkType, IN ULONG DataBlkLen OPTIONAL, IN PVOID DataBlock OPTIONAL, IN CONST GUID *MofGuid OPTIONAL) |
VOID | IoErrLogErrByThreadID (IN PKTHREAD ThreadID, IN CONST GUID *ComponentGuid, IN ULONG ErrCode, IN PWSTR TextData OPTIONAL, IN ULONG DataBlkType, IN ULONG DataBlkLen OPTIONAL, IN PVOID DataBlock OPTIONAL, IN CONST GUID *MofGuid OPTIONAL) |
VOID | IoErrPropagateErrLog (IN HANDLE ErrLogHandle) |
VOID | IoErrTerminateErrLog (IN HANDLE ErrLogHandle) |
NTSTATUS | IoErrRegisterErrHandlers (IN CONST GUID *ModuleGuid, IN ULONG NumErrHandlers, IN PERRHANDLER *HandlerTable) |
PERRINFO | IoErrGetErrData (IN HANDLE ErrLogHandle) |
HANDLE | IoErrSaveErrData (IN HANDLE ErrLogHandle, IN PVOID DataTag OPTIONAL, IN ULONG TagFlags OPTIONAL) |
PERRINFO | IoErrGetSavedData (IN HANDLE SaveDataHandle) |
VOID | IoErrFreeSavedData (IN HANDLE SaveDataHandle) |
NTSTATUS | IoErrMatchErrCase (IN PERRINFO ErrInfo, OUT PULONG ErrCaseID, OUT PHANDLE ErrCaseHandle OPTIONAL) |
NTSTATUS | IoErrFindErrCaseByID (IN ULONG ErrCaseID, OUT PHANDLE ErrCaseHandle) |
NTSTATUS | IoErrHandleErrCase (IN PERRINFO ErrInfo, IN HANDLE ErrCaseHandle) |
NTSTATUS | IoErrGetLongErrMessage (IN PERRINFO ErrInfo, IN HANDLE ErrCaseHandle, OUT PUNICODE_STRING unicodeMsg) |
NTSTATUS | IoErrGetShortErrMessage (IN PERRINFO ErrInfo, IN HANDLE ErrCaseHandle, OUT PUNICODE_STRING unicodeMsg) |
BOOLEAN | IoErrInitSystem (VOID) |
NTSTATUS | IoErrRetrieveSavedData (OUT PINFOBLK InfoBlk, IN ULONG BuffSize, OUT PULONG DataSize OPTIONAL, IN PVOID DataTag OPTIONAL, IN ULONG TagFlags OPTIONAL) |
|
Definition at line 46 of file ioeapi.h. Referenced by IoepLogErr(). |
|
Definition at line 43 of file ioeapi.h. Referenced by IoepLogErr(). |
|
Definition at line 44 of file ioeapi.h. Referenced by IoepCatMsgArg(). |
|
Definition at line 47 of file ioeapi.h. Referenced by IoepCatMsgArg(). |
|
Definition at line 45 of file ioeapi.h. Referenced by IoepCatMsgArg(). |
|
Definition at line 54 of file ioeapi.h. Referenced by IoErrSaveErrData(). |
|
|
|
Definition at line 52 of file ioeapi.h. Referenced by IoErrRetrieveSavedData(), and IoErrSaveErrData(). |
|
Definition at line 38 of file ioeapi.h. Referenced by IoepGetErrMessage(). |
|
Definition at line 83 of file ioeapi.h. Referenced by IoepExtractErrData(), IoErrGetLongErrMessage(), IoErrGetShortErrMessage(), IoErrHandleErrCase(), and IoErrMatchErrCase(). |
|
Definition at line 93 of file ioeapi.h. Referenced by IoErrRetrieveSavedData(). |
|
Definition at line 36 of file ioeapi.h. Referenced by IoepCatMsgArg(), IoepGetErrMessage(), IoepHandleErrCase(), IoErrFindErrCaseByID(), and IoErrMatchErrCase(). |
|
Definition at line 34 of file ioeapi.h. Referenced by IoepHandleErrCase(). |
|
Definition at line 35 of file ioeapi.h. Referenced by IoErrRegisterErrHandlers(). |
|
|
|
|
|
Referenced by IoErrRetrieveSavedData(). |
|
Referenced by IoErrRetrieveSavedData(). |
|
|
|
Definition at line 95 of file ioeapi.h. Referenced by IoepCatMsgArg(), IoepFindErrHandler(), IoepHandleErrCase(), and IoErrRegisterErrHandlers(). |
|
Referenced by IoErrMatchErrCase(). |
|
|
|
Referenced by IoErrRetrieveSavedData(). |
|
Definition at line 882 of file ioeapi.c. References DBGPRINT, ENTER, _errcase::ErrCaseID, _errcasedb::ErrCaseOffset, EXIT, IoepGetErrCaseDB(), NTSTATUS(), NULL, _errcasedb::NumErrCases, PAGED_CODE, PROCNAME, and STATUS_IOE_DATABASE_NOT_READY.
|
|
Definition at line 647 of file ioeapi.c. References ASSERT, DBGPRINT, ENTER, _savedata::ErrInfo, ExFreePool(), EXIT, IoepErrListLock, _savedata::list, NULL, PROCNAME, SIG_SAVEDATA, _errinfo::Signature, and _savedata::Signature.
|
|
Definition at line 452 of file ioeapi.c. References ASSERT, DBGPRINT, ENTER, _errlog::ErrInfo, ExAllocatePoolWithTag, ExFreePool(), EXIT, IoepExtractErrData(), IoepGetErrStack, IOETAG_ERRINFO, NonPagedPool, NT_SUCCESS, NTSTATUS(), NULL, PROCNAME, SIG_ERRLOG, and _errlog::Signature. Referenced by IoErrSaveErrData(), and IoErrTerminateErrLog().
|
|
Definition at line 985 of file ioeapi.c. References ASSERT, DBGPRINT, ENTER, EXIT, IOEMETHOD_LONGMSG, IoepHandleErrCase(), NTSTATUS(), NULL, PAGED_CODE, PROCNAME, and SIG_ERRINFO.
|
|
Definition at line 607 of file ioeapi.c. References ASSERT, DBGPRINT, ENTER, EXIT, NULL, PROCNAME, and SIG_SAVEDATA.
|
|
Definition at line 1041 of file ioeapi.c. References ASSERT, DBGPRINT, ENTER, EXIT, IOEMETHOD_SHORTMSG, IoepHandleErrCase(), NTSTATUS(), NULL, PAGED_CODE, PROCNAME, and SIG_ERRINFO.
|
|
Definition at line 939 of file ioeapi.c. References ASSERT, DBGPRINT, ENTER, EXIT, IOEMETHOD_ANY, IoepHandleErrCase(), NTSTATUS(), NULL, PAGED_CODE, PROCNAME, and SIG_ERRINFO.
|
|
Definition at line 73 of file ioeapi.c. References ENTER, EXIT, IoepInitErrLog(), Irp, PERRLOG, PROCNAME, and THREADKEY_IRP.
|
|
Definition at line 104 of file ioeapi.c. References ENTER, EXIT, IoepInitErrLog(), PROCNAME, and THREADKEY_THREADID.
|
|
Definition at line 38 of file ioeapi.c. References ENTER, EXIT, IoepErrListLock, IoepErrModuleListHead, IoepErrThreadListHead, IoepRegKeyStrIoErr, IoepSaveDataListHead, KeInitializeSpinLock(), L, PROCNAME, RtlInitUnicodeString(), and TRUE.
|
|
Definition at line 135 of file ioeapi.c. References ENTER, EXIT, IoepLogErr(), Irp, L, PROCNAME, and THREADKEY_IRP.
|
|
Definition at line 186 of file ioeapi.c. References ENTER, EXIT, IoepLogErr(), L, PROCNAME, and THREADKEY_THREADID.
|
|
Definition at line 800 of file ioeapi.c. References ASSERT, DBGPRINT, ENTER, _errcase::ErrCaseID, _errcasedb::ErrCaseOffset, _errcasedb::ErrIDPathBlkOffset, _errcase::ErrIDPathOffset, EXIT, IoepGetErrCaseDB(), IoepMatchErrIDPath(), NTSTATUS(), NULL, _errcasedb::NumErrCases, PAGED_CODE, PERRID, PROCNAME, SIG_ERRINFO, and STATUS_IOE_DATABASE_NOT_READY.
|
|
Definition at line 238 of file ioeapi.c. References ASSERT, DBGPRINT, ENTER, _errlog::ErrInfo, ERRLOG, _errthread::ErrLogListHead, _errlog::ErrStack, _errlog::ErrThread, ExFreePool(), EXIT, IoepErrListLock, IoepGetErrStack, _errlog::list, NULL, PERRENTRY, PROCNAME, SIG_ERRLOG, _errlog::Signature, _errinfo::Signature, and _errentry::slist.
|
|
Definition at line 383 of file ioeapi.c. References ASSERT, _errmodule::ComponentGuid, DBGPRINT, ENTER, ERRMODULE, ExAllocatePoolWithTag, ExInterlockedInsertTailList(), EXIT, _errmodule::HandlerTable, IoepErrListLock, IoepErrModuleListHead, IoepFindErrModule(), IOETAG_ERRMODULE, _errmodule::list, NonPagedPool, NTSTATUS(), NULL, _errmodule::NumErrHandlers, PERRHANDLER, PERRMODULE, PROCNAME, and STATUS_IOE_MODULE_ALREADY_REGISTERED.
|
|
Definition at line 698 of file ioeapi.c. References ASSERT, _errinfo::DataTag, DBGPRINT, ENTER, ERRINFO, _savedata::ErrInfo, EXIT, INFOBLK, IOE_INFOBLK_VERSION, IOEDATATAG_TYPE_MASK, IoepSaveDataListHead, NTSTATUS(), NULL, PINFOBLK, PROCNAME, SIG_INFOBLK, _errinfo::Size, and _errinfo::TagFlags.
|
|
Definition at line 538 of file ioeapi.c. References ASSERT, _errinfo::DataTag, DBGPRINT, ENTER, _savedata::ErrInfo, ExAllocatePoolWithTag, ExInterlockedInsertHeadList(), EXIT, IOEDATATAG_BITS, IOEDATATAG_TYPE_MASK, IoepErrListLock, IoepSaveDataListHead, IoErrGetErrData(), IOETAG_SAVEDATA, _savedata::list, NonPagedPool, NULL, PROCNAME, PSAVEDATA, SAVEDATA, SIG_ERRLOG, SIG_SAVEDATA, _savedata::Signature, and _errinfo::TagFlags.
|
|
Definition at line 305 of file ioeapi.c. References ASSERT, ASSERT_PDO, DBGPRINT, ENTER, _errlog::ErrInfo, _errthread::ErrLogListHead, _errlog::ErrStack, _errlog::ErrThread, ExFreePool(), EXIT, _DEVICE_NODE::InstancePath, IoepErrListLock, IoepFireWMIEvent(), IoepFreeErrStack(), IoepGetErrStack, IoErrGetErrData(), _errlog::list, _errthread::list, NULL, PROCNAME, SIG_ERRLOG, _errlog::Signature, _errinfo::Signature, _errthread::ThreadKey, THREADKEY_IRP, and _errthread::ThreadKeyType.
|