Logo Search packages:      
Sourcecode: virtualbox-ose version File versions  Download package

kLdrModNative.c File Reference


Detailed Description

kLdr - The Module Interpreter for the Native Loaders.

Definition in file kLdrModNative.c.

#include <k/kLdr.h>
#include "kLdrInternal.h"
#include <os2.h>

Go to the source code of this file.

Classes

struct  KLDRMODNATIVE

Defines

#define INCL_BASE
#define KLDRMODNATIVE_ASSERT(expr)   kHlpAssert(expr)
#define KLDRMODNATIVE_RVA2TYPE(pvBits, uRVA, type)   ( (type) ((KUPTR)(pvBits) + (uRVA)) )
#define KLDRMODNATIVE_STRICT   1
#define LIBPATHSTRICT   3
#define QHINF_EXEINFO   1
#define QHINF_FIXENTRY   6
#define QHINF_LIBPATH   5
#define QHINF_LIBPATHLENGTH   4
#define QHINF_MAPSEL   8
#define QHINF_READFILE   3
#define QHINF_READRSRCTBL   2
#define QHINF_STE   7

Typedefs

typedef struct KLDRMODNATIVEPKLDRMODNATIVE

Functions

APIRET DosQueryHeaderInfo (HMODULE hmod, ULONG ulIndex, PVOID pvBuffer, ULONG cbBuffer, ULONG ulSubFunction)
static int kldrModNativeAllocTLS (PKLDRMOD pMod)
static int kldrModNativeCallInit (PKLDRMOD pMod, KUPTR uHandle)
static int kldrModNativeCallTerm (PKLDRMOD pMod, KUPTR uHandle)
static int kldrModNativeCallThread (PKLDRMOD pMod, KUPTR uHandle, unsigned fAttachingOrDetaching)
static int kldrModNativeCreate (PCKLDRMODOPS pOps, PKRDR pRdr, KLDRFOFF offNewHdr, PPKLDRMOD ppMod)
static int kldrModNativeDestroy (PKLDRMOD pMod)
static int kldrModNativeEnumDbgInfo (PKLDRMOD pMod, const void *pvBits, PFNKLDRENUMDBG pfnCallback, void *pvUser)
static int kldrModNativeEnumSymbols (PKLDRMOD pMod, const void *pvBits, KLDRADDR BaseAddress, KU32 fFlags, PFNKLDRMODENUMSYMS pfnCallback, void *pvUser)
static int kldrModNativeFixupMapping (PKLDRMOD pMod, PFNKLDRMODGETIMPORT pfnGetImport, void *pvUser)
static void kldrModNativeFreeTLS (PKLDRMOD pMod)
static int kldrModNativeGetBits (PKLDRMOD pMod, void *pvBits, KLDRADDR BaseAddress, PFNKLDRMODGETIMPORT pfnGetImport, void *pvUser)
static int kldrModNativeGetImport (PKLDRMOD pMod, const void *pvBits, KU32 iImport, char *pszName, KSIZE cchName)
static int kldrModNativeGetStackInfo (PKLDRMOD pMod, const void *pvBits, KLDRADDR BaseAddress, PKLDRSTACKINFO pStackInfo)
static int kldrModNativeHasDbgInfo (PKLDRMOD pMod, const void *pvBits)
static int kldrModNativeMap (PKLDRMOD pMod)
static KI32 kldrModNativeNumberOfImports (PKLDRMOD pMod, const void *pvBits)
static int kldrModNativeQueryMainEntrypoint (PKLDRMOD pMod, const void *pvBits, KLDRADDR BaseAddress, PKLDRADDR pMainEPAddress)
static int kldrModNativeQuerySymbol (PKLDRMOD pMod, const void *pvBits, KLDRADDR BaseAddress, KU32 iSymbol, const char *pchSymbol, KSIZE cchSymbol, const char *pszVersion, PFNKLDRMODGETIMPORT pfnGetForwarder, void *pvUser, PKLDRADDR puValue, KU32 *pfKind)
static int kldrModNativeReload (PKLDRMOD pMod)
static int kldrModNativeRelocateBits (PKLDRMOD pMod, void *pvBits, KLDRADDR NewBaseAddress, KLDRADDR OldBaseAddress, PFNKLDRMODGETIMPORT pfnGetImport, void *pvUser)
static KLDRADDR kldrModNativeSize (PKLDRMOD pMod)
static int kldrModNativeUnmap (PKLDRMOD pMod)
int kLdrModOpenNative (const char *pszFilename, PPKLDRMOD ppMod)
int kLdrModOpenNativeByHandle (KUPTR uHandle, PPKLDRMOD ppMod)

Variables

KLDRMODOPS g_kLdrModNativeOps


Generated by  Doxygen 1.6.0   Back to index