|
kernel
|
Go to the source code of this file.
Data Structures | |
| struct | _EXCEPTION_RECORD |
| struct | _CONTEXT |
| struct | _EXCEPTION_REGISTRATION_RECORD |
| struct | _EX_FRAME_REGISTRATION |
| struct | _EXCEPTION_RANGE |
Macros | |
| #define | EXCEPTION_MAXIMUM_PARAMETERS 15 |
| #define | try |
| #define | except |
| #define | end_try |
| #define | leave do { goto _try_break; } while (0) |
Typedefs | |
| typedef struct _EXCEPTION_RECORD | EXCEPTION_RECORD |
| typedef struct _EXCEPTION_RECORD * | PEXCEPTION_RECORD |
| typedef enum _EXCEPTION_DISPOSITION | EXCEPTION_DISPOSITION |
| typedef struct _CONTEXT | CONTEXT |
| typedef struct _CONTEXT * | PCONTEXT |
| typedef struct _EXCEPTION_REGISTRATION_RECORD | EXCEPTION_REGISTRATION_RECORD |
| typedef struct _EX_FRAME_REGISTRATION | EX_FRAME_REGISTRATION |
| typedef struct _EXCEPTION_RANGE | EXCEPTION_RANGE |
| typedef struct _EXCEPTION_RANGE * | PEXCEPTION_RANGE |
Enumerations | |
| enum | _EXCEPTION_DISPOSITION { ExceptionContinueExecution = 0 , ExceptionContinueSearch = 1 , ExceptionNestedException = 2 , ExceptionCollidedUnwind = 3 } |
Functions | |
| uint64_t | MiSearchExceptionTable (uint64_t rip) |
| PETHREAD | PsGetCurrentThread (void) |
| bool | ExpCaptureContext (IN PCONTEXT Context) |
| EXCEPTION_DISPOSITION | MeStandardHandler (PEXCEPTION_RECORD ExceptionRecord, void *EstablisherFrame, PCONTEXT ContextRecord, void *DispatcherContext) |
| bool | ExpIsExceptionHandlerPresent (IN PETHREAD Thread) |
| void | ExpDispatchException (IN PTRAP_FRAME TrapFrame, IN PCONTEXT ContextRecord, IN PEXCEPTION_RECORD ExceptionRecord) |
| uint64_t | ExpFindKernelModeExceptionHandler (uint64_t Rip) |
| bool | ExpIsPrivilegedInstruction (uint8_t *Ip) |
| MTSTATUS | ProbeForRead (IN const void *Address, IN size_t Length, IN uint32_t Alignment) |
| void | ExpRaiseStatus (IN MTSTATUS Status, IN uint64_t Rip) |
Variables | |
| EXCEPTION_RANGE | __start_ex_table [] |
| EXCEPTION_RANGE | __stop_ex_table [] |
| #define end_try |
Definition at line 145 of file exception.h.
| #define except |
Definition at line 131 of file exception.h.
| #define EXCEPTION_MAXIMUM_PARAMETERS 15 |
Definition at line 34 of file exception.h.
| #define leave do { goto _try_break; } while (0) |
Definition at line 150 of file exception.h.
| #define try |
Definition at line 115 of file exception.h.
| typedef struct _EX_FRAME_REGISTRATION EX_FRAME_REGISTRATION |
| typedef enum _EXCEPTION_DISPOSITION EXCEPTION_DISPOSITION |
| typedef struct _EXCEPTION_RANGE EXCEPTION_RANGE |
| typedef struct _EXCEPTION_RECORD EXCEPTION_RECORD |
| typedef struct _EXCEPTION_REGISTRATION_RECORD EXCEPTION_REGISTRATION_RECORD |
| typedef struct _EXCEPTION_RANGE * PEXCEPTION_RANGE |
| typedef struct _EXCEPTION_RECORD * PEXCEPTION_RECORD |
| Enumerator | |
|---|---|
| ExceptionContinueExecution | |
| ExceptionContinueSearch | |
| ExceptionNestedException | |
| ExceptionCollidedUnwind | |
Definition at line 43 of file exception.h.
| void ExpDispatchException | ( | IN PTRAP_FRAME | TrapFrame, |
| IN PCONTEXT | ContextRecord, | ||
| IN PEXCEPTION_RECORD | ExceptionRecord ) |
Definition at line 56 of file exception.c.
| uint64_t ExpFindKernelModeExceptionHandler | ( | uint64_t | Rip | ) |
Definition at line 114 of file exception.c.
Definition at line 23 of file exception.c.
| bool ExpIsPrivilegedInstruction | ( | uint8_t * | Ip | ) |
Definition at line 4 of file instruction.c.
| EXCEPTION_DISPOSITION MeStandardHandler | ( | PEXCEPTION_RECORD | ExceptionRecord, |
| void * | EstablisherFrame, | ||
| PCONTEXT | ContextRecord, | ||
| void * | DispatcherContext ) |
| uint64_t MiSearchExceptionTable | ( | uint64_t | rip | ) |
|
extern |
|
extern |