[Soot-list] Question about soot.jimple.toolkits.infoflow package

Jiaqi Tan tanjiaqi at gmail.com
Sun Apr 7 16:10:32 EDT 2013


Hi,

I have some questions about trying to get the various analyses in the
soot.jimple.toolkits.infoflow package to work.

I noticed that in InfoFlowAnalysis, the doApplicationClassesAnalysis()
method is commented out, is there a bug or problem with the method?

Also, I tried doing this in the internalTransform() of a SceneTransformer:

Iterator<SootClass> appClassIter = Scene.v().getApplicationClasses().iterator();
while (appClassIter.hasNext()) {
     Iterator<SootMethod> mtdIter = appClassIter.next().methodIterator();
     while (mtdIter.hasNext()) {
          SootMethod currMtd = mtdIter.next();
          DirectedGraph flowSummary = ifa.getMethodInfoFlowSummary(currMtd);
          InfoFlowAnalysis.printInfoFlowSummary(flowSummary);
     }
}

And I got an NPE in:
Exception in thread "main" java.lang.NullPointerException
at soot.jimple.toolkits.infoflow.SmartMethodInfoFlowAnalysis.handleInvokeExpr(SmartMethodInfoFlowAnalysis.java:415)
at soot.jimple.toolkits.infoflow.SmartMethodInfoFlowAnalysis.addFlowToCdfg(SmartMethodInfoFlowAnalysis.java:830)
at soot.jimple.toolkits.infoflow.SmartMethodInfoFlowAnalysis.generateAbbreviatedInfoFlowGraph(SmartMethodInfoFlowAnalysis.java:154)
at soot.jimple.toolkits.infoflow.SmartMethodInfoFlowAnalysis.<init>(SmartMethodInfoFlowAnalysis.java:131)
at soot.jimple.toolkits.infoflow.ClassInfoFlowAnalysis.getMethodInfoFlowSummary(ClassInfoFlowAnalysis.java:89)
at soot.jimple.toolkits.infoflow.InfoFlowAnalysis.getMethodInfoFlowSummary(InfoFlowAnalysis.java:112)
at soot.jimple.toolkits.infoflow.InfoFlowAnalysis.getMethodInfoFlowSummary(InfoFlowAnalysis.java:108)

How should I use the classes in soot.jimple.toolkits.infoflow?

Thanks!

Regards,
Jiaqi Tan


More information about the Soot-list mailing list