3 Copyright (c) 1998-2001 Klaus P. Gerlicher
24 15-Nov-2000: general cleanup of source files
28 This file may be distributed under the terms of the GNU Public License.
32 typedef struct _LOCAL_VARIABLE
36 ULONG value
,offset
,line
;
38 }LOCAL_VARIABLE
,*PLOCAL_VARIABLE
;
41 struct _DEBUG_MODULE_SYMBOL_
47 typedef struct _DEBUG_MODULE_
49 struct _DEBUG_MODULE_
*next
;
53 WCHAR name
[DEBUG_MODULE_NAME_LEN
];
54 struct _DEBUG_MODULE_SYMBOL_ syms
;
55 }DEBUG_MODULE
, *PDEBUG_MODULE
;
57 BOOLEAN
InitFakeKernelModule(void);
58 BOOLEAN
LoadExports(void);
59 BOOLEAN
SanityCheckExports(void);
60 void UnloadExports(void);
61 BOOLEAN
ScanExports(const char *pFind
,PULONG pValue
);
62 BOOLEAN
ScanExportsByAddress(LPSTR
*pFind
,ULONG ulValue
);
63 PICE_SYMBOLFILE_HEADER
* LoadSymbols(LPSTR filename
);
64 BOOLEAN
LoadSymbolsFromConfig(BOOLEAN bIgnoreBootParams
);
65 void UnloadSymbols(void);
66 BOOLEAN
ReloadSymbols(void);
67 LPSTR
FindFunctionByAddress(ULONG ulValue
,PULONG pulstart
,PULONG pulend
);
68 LPSTR
FindSourceLineForAddress(ULONG addr
,PULONG pulLineNumber
,LPSTR
* ppSrcStart
,LPSTR
* ppSrcEnd
,LPSTR
* ppFilename
);
69 PLOCAL_VARIABLE
FindLocalsByAddress(ULONG addr
);
70 ULONG
FindFunctionInModuleByName(LPSTR szFunctionname
, PDEBUG_MODULE pMod
);
71 PICE_SYMBOLFILE_HEADER
* FindModuleSymbolsByModuleName(LPSTR modname
);
72 BOOLEAN
FindAddressForSourceLine(ULONG ulLineNumber
,LPSTR pFilename
, PDEBUG_MODULE pMod
,PULONG pValue
);
73 ULONG
ConvertDecimalToUlong(LPSTR p
);
74 PDEBUG_MODULE
FindModuleFromAddress(ULONG addr
);
75 PICE_SYMBOLFILE_HEADER
* FindModuleSymbols(ULONG addr
);
76 ULONG
ListSymbolStartingAt(PDEBUG_MODULE pMod
,PICE_SYMBOLFILE_HEADER
* pSymbols
,ULONG index
,LPSTR pOutput
);
77 PDEBUG_MODULE
FindModuleByName(LPSTR modname
);
78 void Evaluate(PICE_SYMBOLFILE_HEADER
* pSymbols
,LPSTR p
);
79 LONG
ExtractNumber(LPSTR p
);
80 LPSTR
ExtractTypeName(LPSTR p
);
81 PDEBUG_MODULE
IsModuleLoaded(LPSTR p
);
83 //extern ULONG kernel_end;
84 extern PICE_SYMBOLFILE_HEADER
* apSymbols
[32];
86 //extern struct module fake_kernel_module;
87 #define KERNEL_START (0xc0000000)