11 #define WIN32_NO_STATUS 19 #define ok_ulonglong(expression, result) \ 21 ULONG64 _value = (expression); \ 22 ULONG64 _result = (result); \ 23 ok(_value == _result, "Wrong value for '%s', expected: " #result " (%s), got: %s\n", \ 24 #expression, wine_dbgstr_longlong(_result), wine_dbgstr_longlong(_value)); \ 27 #define ok_ulonglong_(file, line, expression, result) \ 29 ULONG64 _value = (expression); \ 30 ULONG64 _result = (result); \ 31 ok_(file, line)(_value == _result, "Wrong value for '%s', expected: " #result " (%s), got: %s\n", \ 32 #expression, wine_dbgstr_longlong(_result), wine_dbgstr_longlong(_value)); \ 62 #define init_sym(fInvadeProcess) init_sym_imp(fInvadeProcess, __FILE__, __LINE__) 64 #define INIT_PSYM(buff) do { \ 65 memset((buff), 0, sizeof((buff))); \ 66 ((PSYMBOL_INFO)(buff))->SizeOfStruct = sizeof(SYMBOL_INFO); \ 67 ((PSYMBOL_INFO)(buff))->MaxNameLen = MAX_SYM_NAME; \ 75 memset(&ModuleInfo, 0,
sizeof(ModuleInfo));
81 ModuleInfo.
CVSig == (
'R' | (
'S' << 8) | (
'Y' << 16) | (
'M' << 24));
93 skip(
"dbghelp.dll cannot parse rsym\n");
137 skip(
"dbghelp.dll cannot parse rsym\n");
211 ok_str(pSymbol->
Name,
"_head_dll_ntdll_libntdll_a");
286 skip(
"dbghelp.dll cannot parse rsym\n");
313 ok(0,
"Failed extracting files\n");
328 trace(
"Module loaded by SymLoadModule64\n");
345 trace(
"Module loaded by LoadLibraryA\n");
BOOL WINAPI SymCleanup(HANDLE hProcess)
#define ok_ulonglong(expression, result)
static BOOL init_sym_imp(BOOL fInvadeProcess, const char *file, int line)
static const WCHAR szDllName[]
DWORD WINAPI SymSetOptions(DWORD opts)
#define ok_hex_(expression, result)
static void test_SymFromAddr(HANDLE hProc, DWORD64 BaseAddress)
DWORD WINAPI GetLastError(VOID)
#define ok_hex(expression, result)
struct _SYMBOL_INFO * PSYMBOL_INFO
static BOOL supports_rsym(HANDLE hProc, DWORD64 BaseAddress)
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryA(LPCSTR lpLibFileName)
#define ok_ulonglong_(file, line, expression, result)
BOOL WINAPI SymInitialize(HANDLE hProcess, PCSTR UserSearchPath, BOOL fInvadeProcess)
#define ok_int(expression, result)
DWORD64 WINAPI SymLoadModule64(HANDLE hProcess, HANDLE hFile, PCSTR ImageName, PCSTR ModuleName, DWORD64 BaseOfDll, DWORD SizeOfDll)
int extract_gcc_dll(char szFile[MAX_PATH])
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID * BaseAddress
_In_ PWDFDEVICE_INIT _In_ PWDF_REMOVE_LOCK_OPTIONS Options
#define init_sym(fInvadeProcess)
struct _SYMBOL_INFO SYMBOL_INFO
void dump_rsym(const char *filename)
struct _test_context test_context
#define ok_str_(file, line, x, y)
#define GetCurrentProcess()
static BOOL CALLBACK EnumSymProc(PSYMBOL_INFO pSymInfo, ULONG SymbolSize, PVOID UserContext)
BOOL WINAPI SymFromAddr(HANDLE hProcess, DWORD64 Address, DWORD64 *Displacement, PSYMBOL_INFO Symbol)
DWORD WINAPI SymGetOptions(void)
BOOL WINAPI SymEnumSymbols(HANDLE hProcess, ULONG64 BaseOfDll, PCSTR Mask, PSYM_ENUMERATESYMBOLS_CALLBACK EnumSymbolsCallback, PVOID UserContext)
static void test_SymFromName(HANDLE hProc, DWORD64 BaseAddress)
#define ERROR_MOD_NOT_FOUND
BOOL WINAPI SymFromName(HANDLE hProcess, PCSTR Name, PSYMBOL_INFO Symbol)
static void test_SymEnumSymbols(HANDLE hProc, DWORD64 BaseAddress)
BOOL WINAPI SymGetModuleInfo64(HANDLE hProcess, DWORD64 dwAddr, PIMAGEHLP_MODULE64 ModuleInfo)