[Soot-list] "Value $r0 of type .app.MainActivity previously had type android.os.Bundle"
H S
aras_h1988 at yahoo.com
Wed Jul 16 13:13:59 EDT 2014
Hi,
First one creates the dummy Main method, it works fine, but then for runInfoFlow, it gives the following error :
The Error:
Exception in thread "main" java.lang.RuntimeException: Value $r0 of type com.example.myapplication4.app.MainActivity previously had type android.os.Bundle
which comes after the following terminal output:
=======end of runPacks=====================================================================================
======================runInfoFlow======================================================================
Running data flow analysis on .\apks\app17.apk with 127 sources and 60 sinks...
Starting infoflow computation...
[main] INFO soot.jimple.infoflow.Infoflow - Resetting Soot...
Using 'C:\Users\a0r262s\AppData\Local\Android\android-sdk\platforms\android-17\android.jar' as android.jar
Warning: java.lang.ref.Finalizer is a phantom class!
...
Code :
String apkInput=".\\apks\\app17.apk";
String AndroidJar=System.getenv("ANDROID_HOME")+"\\platforms";
String forcedPathAndroidJar=System.getenv("ANDROID_HOME")+"\\platforms\\android-17\\android.jar";
// android-17
Options.v().set_android_jars(AndroidJar);
Options.v().set_force_android_jar(forcedPathAndroidJar);//
SetupApplication setupApplication = new SetupApplication(forcedPathAndroidJar,apkInput);
setupApplication.setTaintWrapper(new EasyTaintWrapper("EasyTaintWrapperSource.txt"));
setupApplication.calculateSourcesSinksEntrypoints("SourcesAndSinks.txt");
setupApplication.setEnableImplicitFlows(true);
setupApplication.setEnableStaticFieldTracking(true);
setupApplication.setFlowSensitiveAliasing(true);
setupApplication.setEnableCallbacks(true);
setupApplication.setEnableExceptionTracking(true);
setupApplication.setComputeResultPaths(true);
setupApplication.getSootConfig();//
//
soot.G.reset();
Options.v().set_src_prec(Options.src_prec_apk);
Options.v().set_process_dir(Collections.singletonList(apkInput));
Options.v().set_android_jars(AndroidJar);
Options.v().set_force_android_jar(forcedPathAndroidJar);//
Options.v().set_whole_program(true);
Options.v().set_allow_phantom_refs(true);
Options.v().set_output_format(Options.output_format_class);
Scene.v().setPhantomRefs(true);//
Options.v().setPhaseOption("cg.spark", "on");
Scene.v().loadNecessaryClasses();
Scene.v().loadDynamicClasses();//
Scene.v().loadBasicClasses();//
SootMethod entryPoint = setupApplication.getEntryPointCreator().createDummyMain();
Options.v().set_main_class(entryPoint.getSignature());
Scene.v().setEntryPoints(Collections.singletonList(entryPoint));
Options.v().set_whole_program(true);
//System.out.println("<getActiveBody> ===================================");
//System.out.println(entryPoint.getActiveBody());
System.out.println("=======runPacks=====================================================================================");
PackManager.v().runPacks();
System.out.println(Scene.v().getCallGraph().size());
System.out.println("=======end of runPacks=====================================================================================");
//
ResultsAvailableHandler resultsAvailableHandler = new ResultsAvailableHandler() {
@Override
public void onResultsAvailable(IInfoflowCFG iInfoflowCFG, InfoflowResults infoflowResults) {
}
};
System.out.println("======================runInfoFlow======================================================================");
InfoflowResults infoflowResults = setupApplication.runInfoflow(resultsAvailableHandler);
System.out.println("-----------------------end of runInfoFlow--------------------------------------------------------------------");
infoflowResults.printResults();
System.out.println("--------------------------end-of-printResults----------------------------------------------------------------");
System.out.println(infoflowResults.getResults());
System.out.println("--------------------------end-of-getResults----------------------------------------------------------------");
}
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20140716/92b7ccc3/attachment-0003.html
More information about the Soot-list
mailing list