Make relay and snooping work for LoadLibrary+GetProcAddress sequence
(based on a patch by Dmitry Timoshkov).
This commit is contained in:
parent
fbf003dd39
commit
60f0439ba6
|
@ -305,15 +305,15 @@ static FARPROC find_ordinal_export( HMODULE module, const IMAGE_EXPORT_DIRECTORY
|
||||||
((const char *)proc < (const char *)exports + exp_size))
|
((const char *)proc < (const char *)exports + exp_size))
|
||||||
return find_forwarded_export( module, (const char *)proc );
|
return find_forwarded_export( module, (const char *)proc );
|
||||||
|
|
||||||
if (TRACE_ON(snoop) && current_modref)
|
if (TRACE_ON(snoop))
|
||||||
{
|
{
|
||||||
proc = SNOOP_GetProcAddress( module, exports, exp_size, proc, ordinal,
|
const WCHAR *user = current_modref ? current_modref->ldr.BaseDllName.Buffer : NULL;
|
||||||
current_modref->ldr.BaseDllName.Buffer );
|
proc = SNOOP_GetProcAddress( module, exports, exp_size, proc, ordinal, user );
|
||||||
}
|
}
|
||||||
if (TRACE_ON(relay) && current_modref)
|
if (TRACE_ON(relay))
|
||||||
{
|
{
|
||||||
proc = RELAY_GetProcAddress( module, exports, exp_size, proc,
|
const WCHAR *user = current_modref ? current_modref->ldr.BaseDllName.Buffer : NULL;
|
||||||
current_modref->ldr.BaseDllName.Buffer );
|
proc = RELAY_GetProcAddress( module, exports, exp_size, proc, user );
|
||||||
}
|
}
|
||||||
return proc;
|
return proc;
|
||||||
}
|
}
|
||||||
|
|
|
@ -332,6 +332,7 @@ static BOOL check_from_module( const WCHAR **includelist, const WCHAR **excludel
|
||||||
const WCHAR **listitem;
|
const WCHAR **listitem;
|
||||||
BOOL show;
|
BOOL show;
|
||||||
|
|
||||||
|
if (!module) return TRUE;
|
||||||
if (!includelist && !excludelist) return TRUE;
|
if (!includelist && !excludelist) return TRUE;
|
||||||
if (excludelist)
|
if (excludelist)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue