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

Classes | Defines | Typedefs | Enumerations | Functions | Variables

kLdrInternal.h File Reference

#include <k/kHlp.h>
#include <k/kRdr.h>
Include dependency graph for kLdrInternal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  KLDRDYLDMOD

Defines

#define KLDRDYLD_VALIDATE_HKLDRMOD(hMod)
#define KLDRDYMOD_MAGIC   0x19590106
Signatures we know
#define IMAGE_ELF_SIGNATURE   K_LE2H_U32(0x7f | ('E' << 8) | ((KU32)'L' << 16) | ((KU32)'F' << 24))
#define IMAGE_NT_SIGNATURE   K_LE2H_U32('P' | ('E' << 8))
#define IMAGE_LX_SIGNATURE   K_LE2H_U16('L' | ('X' << 8))
#define IMAGE_LE_SIGNATURE   K_LE2H_U16('L' | ('E' << 8))
#define IMAGE_NE_SIGNATURE   K_LE2H_U16('N' | ('E' << 8))
#define IMAGE_DOS_SIGNATURE   K_LE2H_U16('M' | ('Z' << 8))
#define IMAGE_FAT_SIGNATURE   KU32_C(0xcafebabe)
#define IMAGE_FAT_SIGNATURE_OE   KU32_C(0xbebafeca)
#define IMAGE_MACHO32_SIGNATURE   KU32_C(0xfeedface)
#define IMAGE_MACHO32_SIGNATURE_OE   KU32_C(0xcefaedfe)
#define IMAGE_MACHO64_SIGNATURE   KU32_C(0xfeedfacf)
#define IMAGE_MACHO64_SIGNATURE_OE   KU32_C(0xfefaedfe)

Typedefs

typedef struct KLDRDYLDMOD KLDRDYLDMOD
typedef enum KLDRSTATE KLDRSTATE
typedef struct KLDRDYLDMODPKLDRDYLDMOD
typedef struct KLDRDYLDMOD ** PPKLDRDYLDMOD

Enumerations

enum  KLDRSTATE {
  KLDRSTATE_INVALID = 0, KLDRSTATE_OPEN, KLDRSTATE_MAPPED, KLDRSTATE_RELOADED,
  KLDRSTATE_LOADED_PREREQUISITES, KLDRSTATE_RELOADED_LOADED_PREREQUISITES, KLDRSTATE_FIXED_UP, KLDRSTATE_RELOADED_FIXED_UP,
  KLDRSTATE_PENDING_INITIALIZATION, KLDRSTATE_INITIALIZING, KLDRSTATE_INITIALIZATION_FAILED, KLDRSTATE_GOOD,
  KLDRSTATE_PENDING_TERMINATION, KLDRSTATE_TERMINATING, KLDRSTATE_PENDING_GC, KLDRSTATE_GC,
  KLDRSTATE_PENDING_DESTROY, KLDRSTATE_DESTROYED, KLDRSTATE_END = KLDRSTATE_DESTROYED, KLDRSTATE_32BIT_HACK = 0x7fffffff
}

Functions

void kldrDyldDoLoadExe (PKLDRDYLDMOD pExe)
int kldrDyldFailure (int rc, const char *pszFormat,...)
int kldrDyldFindExistingModule (const char *pszName, const char *pszPrefix, const char *pszSuffix, KLDRDYLDSEARCH enmSearch, unsigned fFlags, PPKLDRDYLDMOD ppMod)
int kldrDyldFindInit (void)
int kldrDyldFindNewModule (const char *pszName, const char *pszPrefix, const char *pszSuffix, KLDRDYLDSEARCH enmSearch, unsigned fFlags, PPKLDRDYLDMOD ppMod)
int kldrDyldGetPrerequisite (const char *pszDll, const char *pszPrefix, const char *pszSuffix, KLDRDYLDSEARCH enmSearch, unsigned fFlags, PKLDRDYLDMOD pDep, PPKLDRDYLDMOD ppMod)
int kldrDyldInit (void)
void kldrDyldModAddDep (PKLDRDYLDMOD pMod, PKLDRDYLDMOD pDep)
void kldrDyldModAddRef (PKLDRDYLDMOD pMod)
int kldrDyldModAttachThread (PKLDRDYLDMOD pMod)
int kldrDyldModCallInit (PKLDRDYLDMOD pMod)
void kldrDyldModCallTerm (PKLDRDYLDMOD pMod)
int kldrDyldModCheckPrerequisites (PKLDRDYLDMOD pMod)
void kldrDyldModClearBindable (PKLDRDYLDMOD pMod)
int kldrDyldModCreate (PKRDR pRdr, KU32 fFlags, PPKLDRDYLDMOD ppMod)
void kldrDyldModDeref (PKLDRDYLDMOD pMod)
void kldrDyldModDestroy (PKLDRDYLDMOD pMod)
void kldrDyldModDetachThread (PKLDRDYLDMOD pMod)
int kldrDyldModDynamicLoad (PKLDRDYLDMOD pMod)
int kldrDyldModDynamicUnload (PKLDRDYLDMOD pMod)
int kldrDyldModFixup (PKLDRDYLDMOD pMod)
int kldrDyldModGetFilename (PKLDRDYLDMOD pMod, char *pszFilename, KSIZE cchFilename)
int kldrDyldModGetMainStack (PKLDRDYLDMOD pMod, void **ppvStack, KSIZE *pcbStack)
int kldrDyldModGetName (PKLDRDYLDMOD pMod, char *pszName, KSIZE cchName)
int kldrDyldModLoadPrerequisites (PKLDRDYLDMOD pMod, const char *pszPrefix, const char *pszSuffix, KLDRDYLDSEARCH enmSearch, unsigned fFlags)
int kldrDyldModMap (PKLDRDYLDMOD pMod)
void kldrDyldModMarkGlobal (PKLDRDYLDMOD pMod)
void kldrDyldModMarkSpecific (PKLDRDYLDMOD pMod)
int kldrDyldModQuerySymbol (PKLDRDYLDMOD pMod, KU32 uSymbolOrdinal, const char *pszSymbolName, KUPTR *puValue, KU32 *pfKind)
int kldrDyldModReload (PKLDRDYLDMOD pMod)
void kldrDyldModRemoveDep (PKLDRDYLDMOD pMod, PKLDRDYLDMOD pDep)
void kldrDyldModSetBindable (PKLDRDYLDMOD pMod, unsigned fDeep)
int kldrDyldModStartExe (PKLDRDYLDMOD pMod)
void kldrDyldModUnloadPrerequisites (PKLDRDYLDMOD pMod)
int kldrDyldModUnmap (PKLDRDYLDMOD pMod)
void * kldrDyldOSAllocStack (KSIZE cb)
int kldrDyldOSStartExe (KUPTR uMainEntrypoint, void *pvStack, KSIZE cbStack)
void kldrDyldTerm (void)
int kldrInit (void)
void kldrTerm (void)
The Loader semaphore
int kLdrDyldSemInit (void)
void kLdrDyldSemTerm (void)
int kLdrDyldSemRequest (void)
void kLdrDyldSemRelease (void)

Variables

KSIZE g_cbkLdrDyldMainStack
int g_fBootstrapping
unsigned g_fkLdrDyldDoneMainStack
unsigned g_fkLdrDyldMainStackAllocated
PKLDRDYLDMOD g_pkLdrDyldBindHead
PKLDRDYLDMOD g_pkLdrDyldBindTail
PKLDRDYLDMOD g_pkLdrDyldInitHead
PKLDRDYLDMOD g_pkLdrDyldInitTail
PKLDRDYLDMOD g_pkLdrDyldTermHead
PKLDRDYLDMOD g_pkLdrDyldTermTail
void * g_pvkLdrDyldMainStack
char g_szkLdrDyldError [1024]
char kLdrDyldDefPrefix [16]
char kLdrDyldDefSuffix [16]
char kLdrDyldExePath [8192]
PKLDRDYLDMOD kLdrDyldHead
char kLdrDyldLibraryPath [8192]
PKLDRDYLDMOD kLdrDyldTail
Module interpreter method tables
KLDRMODOPS g_kLdrModLXOps
KLDRMODOPS g_kLdrModMachOOps
KLDRMODOPS g_kLdrModNativeOps
KLDRMODOPS g_kLdrModPEOps

Detailed Description

kLdr - The Dynamic Loader, internal header.

Definition in file kLdrInternal.h.


Generated by  Doxygen 1.6.0   Back to index