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; \
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");
#define ok_hex_(expression, result)
#define ok_hex(expression, result)
#define ok_int(expression, result)
_In_ ULONG _Out_writes_bytes_opt_ InformationLength PAUX_MODULE_EXTENDED_INFO ModuleInfo
static const WCHAR szDllName[]
BOOL WINAPI SymFromAddr(HANDLE hProcess, DWORD64 Address, DWORD64 *Displacement, PSYMBOL_INFO Symbol)
struct _SYMBOL_INFO * PSYMBOL_INFO
#define ERROR_MOD_NOT_FOUND
BOOL WINAPI SymCleanup(HANDLE hProcess)
BOOL WINAPI SymInitialize(HANDLE hProcess, PCSTR UserSearchPath, BOOL fInvadeProcess)
#define GetCurrentProcess()
struct _SYMBOL_INFO SYMBOL_INFO
DWORD WINAPI SymSetOptions(DWORD opts)
DWORD WINAPI SymGetOptions(void)
DWORD64 WINAPI SymLoadModule64(HANDLE hProcess, HANDLE hFile, PCSTR ImageName, PCSTR ModuleName, DWORD64 BaseOfDll, DWORD SizeOfDll)
BOOL WINAPI SymGetModuleInfo64(HANDLE hProcess, DWORD64 dwAddr, PIMAGEHLP_MODULE64 ModuleInfo)
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryA(LPCSTR lpLibFileName)
#define ERROR_FILE_NOT_FOUND
int extract_gcc_dll(char szFile[MAX_PATH])
static void test_SymEnumSymbols(HANDLE hProc, DWORD64 BaseAddress)
static BOOL CALLBACK EnumSymProc(PSYMBOL_INFO pSymInfo, ULONG SymbolSize, PVOID UserContext)
static BOOL init_sym_imp(BOOL fInvadeProcess, const char *file, int line)
struct _test_context test_context
#define init_sym(fInvadeProcess)
#define ok_ulonglong(expression, result)
static void test_SymFromAddr(HANDLE hProc, DWORD64 BaseAddress)
void dump_rsym(const char *filename)
#define ok_ulonglong_(file, line, expression, result)
static void test_SymFromName(HANDLE hProc, DWORD64 BaseAddress)
static BOOL supports_rsym(HANDLE hProc, DWORD64 BaseAddress)
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID * BaseAddress
#define ok_str_(file, line, x, y)
BOOL WINAPI SymEnumSymbols(HANDLE hProcess, ULONG64 BaseOfDll, PCSTR Mask, PSYM_ENUMERATESYMBOLS_CALLBACK EnumSymbolsCallback, PVOID UserContext)
BOOL WINAPI SymFromName(HANDLE hProcess, PCSTR Name, PSYMBOL_INFO Symbol)
_In_ PWDFDEVICE_INIT _In_ PWDF_REMOVE_LOCK_OPTIONS Options
DWORD WINAPI GetLastError(void)