[Soot-list] Soot/Heros and native methods

Bodden, Eric eric.bodden at sit.fraunhofer.de
Fri Jun 28 12:40:56 EDT 2013


Hi Rohan.

Sorry about the late response.

I am not sure I understand. Why do you think that native calls will be dispatched to the normal flow function. If that's indeed the case then I don't think that is what we intended. Can you clarify?

Cheers,
Eric

On 04.06.2013, at 13:21, Rohan Padhye <rohanpadhye at cse.iitb.ac.in> 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

--
Eric Bodden, Ph.D., http://sse.ec-spride.de/ http://bodden.de/
Head of Secure Software Engineering Group at EC SPRIDE
Tel: +49 6151 16-75422    Fax: +49 6151 16-72051
Room 3.2.14, Mornewegstr. 30, 64293 Darmstadt



More information about the Soot-list mailing list