Topic created on: March 13, 2008 08:36 CDT by
daddsrj 
.
I've just started with PaiMei so can't rule out my own stupidity for causing this error but just in case...
Using proc_peek_recon.py after IDA has finished auto-analysis I get the following error:
searching for inline memcpy()'s and sign extended moves (movsx).
Traceback (most recent call last):
File "<string>", line 1, in ?
File "C:\Program Files\IDA\python\init.py", line 55, in runscript
execfile(script, globals())
File "C:/PaiMei/proc_peek_recon.py", line 113, in ?
if GetFunctionFlags(ea) & FUNC_LIB:
TypeError: unsupported operand type(s) for &: 'NoneType' and 'int'
I altered the code to check for the None after which the script continues until:
looking for potentially interesting API calls now.
enumerating xrefs to sscanf
Traceback (most recent call last):
File "<string>", line 1, in ?
File "C:\Program Files\IDA\python\init.py", line 55, in runscript
execfile(script, globals())
File "C:/PaiMei/proc_peek_recon.py", line 210, in ?
if GetFunctionFlags(xref) & FUNC_LIB:
TypeError: unsupported operand type(s) for &: 'NoneType' and 'int'
This time adding a check for the None is enough to get the script to complete.
It seems the GetFunctionFlags is causing the problem and I guess the functions being checked exist otherwise -1 would be returned. Has anyone else run into this?
> daddsrj: I\'ve just started with PaiMei so can\'t rule out my own stupidity for causing this error but just in case...
> Using proc_peek_recon.py after IDA has finished auto-analysis I get the following error:
> searching for inline memcpy()\'s and sign extended moves (movsx).
> Traceback (most recent call last):
> File \"<string>\", line 1, in ?
> File \"C:\\Program Files\\IDA\\python\\init.py\", line 55, in runscript
> execfile(script, globals())
> File \"C:/PaiMei/proc_peek_recon.py\", line 113, in ?
> if GetFunctionFlags(ea) & FUNC_LIB:
> TypeError: unsupported operand type(s) for &: \'NoneType\' and \'int\'
>
> I altered the code to check for the None after which the script continues until:
> looking for potentially interesting API calls now.
> enumerating xrefs to sscanf
> Traceback (most recent call last):
> File \"<string>\", line 1, in ?
> File \"C:\\Program Files\\IDA\\python\\init.py\", line 55, in runscript
> execfile(script, globals())
> File \"C:/PaiMei/proc_peek_recon.py\", line 210, in ?
> if GetFunctionFlags(xref) & FUNC_LIB:
> TypeError: unsupported operand type(s) for &: \'NoneType\' and \'int\'
>
> This time adding a check for the None is enough to get the script to complete.
>
> It seems the GetFunctionFlags is causing the problem and I >guess the functions being checked exist otherwise -1 would >be returned. Has anyone else run into this?
Just noticed this myself, but according to http://www.hex-rays.com/idapro/idadoc/351.htm the function should always return a non zero value - i.e. there is no 0 flag
|