1
0
Fork 0

DBG: CB_ADDRINFO to handle dynamic comments

This commit is contained in:
mrexodia 2016-11-09 22:44:57 +01:00
parent 567d5a8ba4
commit a4419b5457
No known key found for this signature in database
GPG Key ID: FC89E0AAA0C1AAD8
3 changed files with 15 additions and 1 deletions

View File

@ -339,7 +339,12 @@ extern "C" DLL_EXPORT bool _dbg_addrinfoget(duint addr, SEGMENTREG segment, ADDR
strncat_s(addrinfo->comment, comment.c_str(), _TRUNCATE);
}
}
return retval;
PLUG_CB_ADDRINFO info;
info.addr = addr;
info.addrinfo = addrinfo;
info.retval = retval;
plugincbcall(CB_ADDRINFO, &info);
return info.retval;
}
extern "C" DLL_EXPORT bool _dbg_addrinfoset(duint addr, ADDRINFO* addrinfo)

View File

@ -199,6 +199,13 @@ typedef struct
BridgeCFGraphList graph;
} PLUG_CB_ANALYZE;
typedef struct
{
duint addr;
ADDRINFO* addrinfo;
bool retval;
} PLUG_CB_ADDRINFO;
//enums
typedef enum
{
@ -229,6 +236,7 @@ typedef enum
CB_TRACEEXECUTE, //PLUG_CB_TRACEEXECUTE
CB_SELCHANGED, //PLUG_CB_SELCHANGED
CB_ANALYZE, //PLUG_CB_ANALYZE
CB_ADDRINFO, //PLUG_CB_ADDRINFO
CB_LAST
} CBTYPE;

View File

@ -164,6 +164,7 @@ bool pluginload(const char* pluginName, bool loadall)
regExport("CBFILTERSYMBOL", CB_FILTERSYMBOL);
regExport("CBTRACEEXECUTE", CB_TRACEEXECUTE);
regExport("CBANALYZE", CB_ANALYZE);
regExport("CBADDRINFO", CB_ADDRINFO);
//init plugin
if(!pluginData.pluginit(&pluginData.initStruct))