[Soot-list] Soot/Heros and native methods
Marc-André Laverdière-Papineau
marc-andre.laverdiere-papineau at polymtl.ca
Tue Jun 4 14:43:42 EDT 2013
Hello,
That is a notorious problem with native code.
I know that FlowDroid has some support for native code, essentially by
stubbing them. Maybe that would be worthwhile to check out?
Marc-André Laverdière-Papineau
Doctorant - PhD Candidate
On 04/06/13 07:21 AM, Rohan Padhye wrote:
> Hello all,
>
> I was studying role of the call graph while using Heros for
> interprocedural analysis. However, in the code that builds the
> super-graph for Soot
> (https://github.com/Sable/soot/blob/develop/src/soot/jimple/toolkits/ide/icfg/JimpleBasedInterproceduralCFG.java)
> I do not see any handling for native methods. All I see is that for each
> call-graph edge that is either explicit, thread or a static initializer,
> the following is done:
>
> SootMethod m = edge.getTgt().method();
> if(m.hasActiveBody())
> res.add(m);
> else if(IDESolver.DEBUG)
> System.err.println("Method "+m.getSignature()+" is referenced but has no
> body!");
>
>
> It seems that a call to a method without a body is simply ignored
> (resulting in no super-graph edge). Does that mean that the
> "normalFlowFunction" should also be able to handle invoke statements
> (because that's where native calls will go)?
>
> Thanks,
> Rohan
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>
More information about the Soot-list
mailing list