Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

186 lines
8.0 KiB

extern PCVF pCVF;
extern PCRF pCRF;
#define MHlpvAlloc (*pCVF->pMHlpvAlloc)
#define MHFreeLpv (*pCVF->pMHFreeLpv)
#define SHGetNextExe (*pCVF->pSHGetNextExe)
#define SHHexeFromHmod (*pCVF->pSHHexeFromHmod)
#define SHGetNextMod (*pCVF->pSHGetNextMod)
#define SHGetCxtFromHmod (*pCVF->pSHGetCxtFromHmod)
#define SHGetCxtFromHexe (*pCVF->pSHGetCxtFromHexe)
#define SHSetCxt (*pCVF->pSHSetCxt)
#define SHSetCxtMod (*pCVF->pSHSetCxtMod)
#define SHFindNameInGlobal (*pCVF->pSHFindNameInGlobal)
#define SHFindNameInContext (*pCVF->pSHFindNameInContext)
#define SHGoToParent (*pCVF->pSHGoToParent)
#define SHHsymFromPcxt (*pCVF->pSHHsymFromPcxt)
#define SHNextHsym (*pCVF->pSHNextHsym)
#define SHGetFuncCxf (*pCVF->pSHGetFuncCxf)
#define SHGetModName (*pCVF->pSHGetModName)
//#define SHGetFileName (*pCVF->pSHGetFileName)
#define SHGetExeName (*pCVF->pSHGetExeName)
#define SHGetModNameFromHexe (*pCVF->pSHGetModNameFromHexe)
#define SHGetSymFName (*pCVF->pSHGetSymFName)
//#define SHGethFileFromhMod (*pCVF->pSHGethFileFromhMod)
//#define SHGethModFromName (*pCVF->pSHGethModFromName)
#define SHGethExeFromName (*pCVF->pSHGethExeFromName)
#define SHGethExeFromModuleName (*pCVF->pSHGethExeFromModuleName)
#define SHGetNearestHsym (*pCVF->pSHGetNearestHsym)
#define SHIsInProlog (*pCVF->pSHIsInProlog)
#define SHIsAddrInCxt (*pCVF->pSHIsAddrInCxt)
//#define SHLineFromADDR (*pCVF->pSHLineFromADDR)
//#define SHADDRFromLine (*pCVF->pSHADDRFromLine)
#define SHModelFromAddr (*pCVF->pSHModelFromAddr)
#define SHCompareRE (*pCVF->pSHCompareRE)
#define SHFixupAddr (*pCVF->pSHFixupAddr)
#define SHUnFixupAddr (*pCVF->pSHUnFixupAddr)
#define SHWantSymbols (*pCVF->pSHWantSymbols)
#define PHGetNearestHsym (*pCVF->pPHGetNearestHsym)
#define PHFindNameInPublics (*pCVF->pPHFindNameInPublics)
#define THGetTypeFromIndex (*pCVF->pTHGetTypeFromIndex)
#define THGetNextType (*pCVF->pTHGetNextType)
#define MHIsMemLocked (*pCVF->pMHIsMemLocked)
#define SYGetAddr (*pCVF->pSYGetAddr)
#define SYGetMemInfo (*pCVF->pSYGetMemInfo)
// MAGIC NUMBERS
#define adrTlsBase 7
#define adrPC 2
__inline LPV MHOmfLock(HDEP hdep) { return((LPV) hdep); }
__inline void MHOmfUnLock(HDEP hdep) {}
#define DHSetupExecute (*pCVF->pDHSetupExecute)
#define DHStartExecute (*pCVF->pDHStartExecute)
#define DHCleanUpExecute (*pCVF->pDHCleanUpExecute)
#if !defined (M68K)
#define GetDebuggeeBytes(addr, cb, pv, type) \
(*pCVF->pDHGetDebuggeeBytes)((addr), (cb), (pv))
#define PutDebuggeeBytes(addr, cb, pv, type) \
(*pCVF->pDHPutDebuggeeBytes)((addr), (cb), (pv))
#define GetReg (*pCVF->pDHGetReg)
#define SetReg (*pCVF->pDHSetReg)
#endif
#define in386mode (*pCVF->pin386mode)
#define is_assign (*pCVF->pis_assign)
#define ArrayDefault (*pCVF->pArrayDefault)
#define quit (*pCVF->pquit)
#define assert_out (*pCVF->passert)
//
// Source Line Handler
//
#define SLLineFromAddr (*pCVF->pSLLineFromAddr)
#define SLFLineToAddr (*pCVF->pSLFLineToAddr)
#define SLNameFromHsf (*pCVF->pSLNameFromHsf)
#define SLHmodFromHsf (*pCVF->pSLHmodFromHsf)
#define SLHsfFromPcxt (*pCVF->pSLHsfFromPcxt)
#define SLHsfFromFile (*pCVF->pSLHsfFromFile)
//
// Shell callbacks
//
#define GetCurrentPC (*pCVF->pGetCurrentPC)
// **********************************************************************
// * *
// * RUN TIME CALLBACKS *
// * *
// **********************************************************************
#ifndef WIN32
#define ultoa(a,b,c) ((pCRF->pultoa)(a, b, c))
#define itoa(a,b,c) ((pCRF->pitoa)(a, b, c))
#define ltoa(a,b,c) ((pCRF->pltoa)(a, b, c))
#endif
#define _strtold(a, b) ((pCRF->p_strtold)(a, b))
#define eprintf (*pCRF->peprintf)
//#define sprintf (*pCRF->psprintf)
// **********************************************************************
// * *
// * Expr Evaluator Declarations *
// * *
// **********************************************************************
void LOADDS PASCAL EEInitializeExpr (PCI, PEI);
void LOADDS PASCAL EEFreeStr (EEHSTR);
EESTATUS LOADDS PASCAL EEGetError (PHTM, EESTATUS, PEEHSTR);
EESTATUS LOADDS PASCAL EEParse (char FAR *, EERADIX, SHFLAG, PHTM, uint FAR *);
EESTATUS LOADDS PASCAL EEBindTM (PHTM, PCXT, SHFLAG, SHFLAG, BOOL);
EESTATUS LOADDS PASCAL EEvaluateTM (PHTM, PFRAME, EEDSP);
EESTATUS LOADDS PASCAL EEGetExprFromTM (PHTM, PEERADIX, PEEHSTR, ushort FAR *);
EESTATUS LOADDS PASCAL EEGetValueFromTM (PHTM, EERADIX, PEEFORMAT, PEEHSTR);
EESTATUS LOADDS PASCAL EEGetNameFromTM (PHTM, PEEHSTR);
EESTATUS LOADDS PASCAL EEGetTypeFromTM (PHTM, EEHSTR, PEEHSTR, ulong);
EESTATUS LOADDS PASCAL EEFormatCXTFromPCXT (PCXT, PEEHSTR, BOOL);
void LOADDS PASCAL EEFreeTM (PHTM);
EESTATUS LOADDS PASCAL EEParseBP (char FAR *, EERADIX, SHFLAG, PCXF, PTML, ulong, uint FAR *, SHFLAG);
void LOADDS PASCAL EEFreeTML (PTML);
EESTATUS LOADDS PASCAL EEInfoFromTM (PHTM, PRI, PHTI);
void LOADDS PASCAL EEFreeTI (PHTI);
EESTATUS LOADDS PASCAL EEGetCXTLFromTM(PHTM, PHCXTL);
void LOADDS PASCAL EEFreeCXTL(PHCXTL);
EESTATUS LOADDS PASCAL EEAssignTMToTM (PHTM, PHTM);
EEPDTYP LOADDS PASCAL EEIsExpandable (PHTM);
SHFLAG LOADDS PASCAL EEAreTypesEqual (PHTM, PHTM);
HTYPE LOADDS PASCAL EEGetHtypeFromTM(PHTM );
EESTATUS LOADDS PASCAL EEcChildrenTM (PHTM, long FAR *, PSHFLAG);
EESTATUS LOADDS PASCAL EEGetChildTM (PHTM, long, PHTM, uint FAR *, SHFLAG, uint);
EESTATUS LOADDS PASCAL EEDereferenceTM (PHTM, PHTM, uint FAR *, SHFLAG);
EESTATUS LOADDS PASCAL EEcParamTM (PHTM, ushort FAR *, PSHFLAG);
EESTATUS LOADDS PASCAL EEGetParmTM (PHTM, uint, PHTM, uint FAR *, SHFLAG, uint);
EESTATUS LOADDS PASCAL EEGetTMFromHSYM (HSYM, PCXT, PHTM, uint FAR *, SHFLAG);
EESTATUS LOADDS PASCAL EEFormatAddress( SHSEG, SHOFF, char FAR *, uint, uint );
EESTATUS LOADDS PASCAL EEFormatAddr(LPADDR, char FAR *, uint, uint);
EESTATUS LOADDS PASCAL EEUnFormatAddr(LPADDR, char FAR *);
EESTATUS LOADDS PASCAL EEFormatMemory(LPCH, uint, LPBYTE, uint, FMTTYPE, uint);
EESTATUS LOADDS PASCAL EEUnformatMemory(uchar FAR *, char FAR *, uint,
FMTTYPE, uint);
EESTATUS LOADDS PASCAL EEFormatEnumerate(uint, uint FAR *, uint FAR *,
uint FAR *, uint FAR *, uint FAR *,
LPCH FAR *);
EESTATUS LOADDS PASCAL EEGetHSYMList (HDEP FAR *, PCXT, ushort, uchar FAR *, SHFLAG);
void LOADDS PASCAL EEFreeHSYMList (HDEP FAR *);
void LOADDS PASCAL EESetSuffix( char );
#if MEMDBG
HDEP DbgMemAlloc(UINT,char*,UINT);
HDEP DbgMemReAlloc(HDEP,UINT,char*,UINT);
VOID DbgMemFree(HDEP,char*,UINT);
LPVOID DbgMemLock(HDEP,char*,UINT);
VOID DbgMemUnLock(HDEP,char*,UINT);
#define MHMemAllocate(x) DbgMemAlloc(x,__FILE__,__LINE__)
#define MHMemReAlloc(x,y) DbgMemReAlloc(x,y,__FILE__,__LINE__)
#define MHMemFree(x) DbgMemFree(x,__FILE__,__LINE__)
#define MHMemLock(x) DbgMemLock(x,__FILE__,__LINE__)
#define MHMemUnLock(x) DbgMemUnLock(x,__FILE__,__LINE__)
#else
#define MHMemAllocate (*pCVF->pMHMemAllocate)
#define MHMemReAlloc (*pCVF->pMHMemReAlloc)
#define MHMemFree (*pCVF->pMHMemFree)
#define MHMemLock (*pCVF->pMHMemLock)
#define MHMemUnLock (*pCVF->pMHMemUnLock)
#endif