Reputation: 1
I'm new in analysis with soot framework and now I need to implement the VTA algorithm and use it to create call graphs.
How can I implement VTA?
and how can I use VTA implementation in soot?
Upvotes: 0
Views: 473
Reputation: 11
You might do not need it anymore, but Soot provides a simple way to create call graphs. You can use the command line or the provided API.
You can set different settings, ones that are realted to call graphs are CG phase options in Soot. The texts in parenthesis are the names and values for a given phase.
When using API (You need the Soot jar, You can get it from Soot Github repo) you set the options by method calls like
Options.v().setPhaseOption("cg","enabled:true");
After setting everything You need You should run Soot with the needed arguments
soot.Main.main(args);
After that You can get the CallGraph
CallGraph cg = Scene.v().getCallGraph();
After that You just write a simple method that traverses the graph and serialize it.
Upvotes: 1