soot.options.Options.setPhaseOption()方法的使用及代码示例

x33g5p2x  于2022-01-26 转载在 其他  
字(6.4k)|赞(0)|评价(0)|浏览(247)

本文整理了Java中soot.options.Options.setPhaseOption()方法的一些代码示例,展示了Options.setPhaseOption()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Options.setPhaseOption()方法的具体详情如下:
包路径:soot.options.Options
类名称:Options
方法名:setPhaseOption

Options.setPhaseOption介绍

暂无

代码示例

代码示例来源:origin: Sable/soot

String phaseName = it.next();
String phaseOption = it.next();
if(!setPhaseOption(phaseName, "enabled:true"))
  return false;
String phaseName = it.next();
String phaseOption = it.next();
if(!setPhaseOption(phaseName, phaseOption))
  return false;

代码示例来源:origin: secure-software-engineering/FlowDroid

public static void setGeomPtaSpecificOptions() {
  Options.v().setPhaseOption("cg.spark", "geom-pta:true");
  // Those are default options, not sure whether removing them works.
  Options.v().setPhaseOption("cg.spark", "geom-encoding:Geom");
  Options.v().setPhaseOption("cg.spark", "geom-worklist:PQ");
}

代码示例来源:origin: secure-software-engineering/FlowDroid

private void setSparkOptions() {
  Options.v().setPhaseOption("cg.spark", "on");
  Options.v().setPhaseOption("cg.spark", "string-constants:true");
}

代码示例来源:origin: secure-software-engineering/FlowDroid

private void setChaOptions() {
  Options.v().setPhaseOption("cg.cha", "on");
}

代码示例来源:origin: secure-software-engineering/FlowDroid

case AutomaticSelection:
case SPARK:
  Options.v().setPhaseOption("cg.spark", "on");
  break;
case GEOM:
  Options.v().setPhaseOption("cg.spark", "on");
  AbstractInfoflow.setGeomPtaSpecificOptions();
  break;
case CHA:
  Options.v().setPhaseOption("cg.cha", "on");
  break;
case RTA:
  Options.v().setPhaseOption("cg.spark", "on");
  Options.v().setPhaseOption("cg.spark", "rta:true");
  Options.v().setPhaseOption("cg.spark", "on-fly-cg:false");
  break;
case VTA:
  Options.v().setPhaseOption("cg.spark", "on");
  Options.v().setPhaseOption("cg.spark", "vta:true");
  break;
default:
  Options.v().setPhaseOption("cg", "types-for-invoke:true");

代码示例来源:origin: secure-software-engineering/FlowDroid

options.set_include(includeList);
options.set_output_format(Options.output_format_none);
options.setPhaseOption("jb", "use-original-names:true");
options.set_ignore_classpath_errors(true);

代码示例来源:origin: secure-software-engineering/FlowDroid

@Override
public void setSootOptions(Options options, InfoflowConfiguration config) {
  // explicitly include packages for shorter runtime:
  List<String> includeList = new LinkedList<String>();
  includeList.add("java.lang.*");
  includeList.add("java.util.*");
  includeList.add("java.io.*");
  includeList.add("sun.misc.*");
  includeList.add("java.net.*");
  includeList.add("javax.servlet.*");
  includeList.add("javax.crypto.*");
  includeList.add("android.*");
  includeList.add("org.apache.http.*");
  includeList.add("de.test.*");
  includeList.add("soot.*");
  includeList.add("com.example.*");
  includeList.add("libcore.icu.*");
  includeList.add("securibench.*");
  Options.v().set_no_bodies_for_excluded(true);
  Options.v().set_allow_phantom_refs(true);
  options.set_include(includeList);
  options.set_output_format(Options.output_format_none);
  Options.v().setPhaseOption("jb", "use-original-names:true");
  // Options.v().setPhaseOption("cg.spark", "string-constants:true");
  Options.v().set_ignore_classpath_errors(true);
}

代码示例来源:origin: ibinti/bugvm

String phaseName = (String) it.next();
String phaseOption = (String) it.next();
if( !setPhaseOption( phaseName, "enabled:true" ) ) return false;
String phaseName = (String) it.next();
String phaseOption = (String) it.next();
if( !setPhaseOption( phaseName, phaseOption ) ) return false;

代码示例来源:origin: secure-software-engineering/FlowDroid

break;
case RTA:
  Options.v().setPhaseOption("cg.spark", "on");
  Options.v().setPhaseOption("cg.spark", "rta:true");
  Options.v().setPhaseOption("cg.spark", "on-fly-cg:false");
  Options.v().setPhaseOption("cg.spark", "string-constants:true");
  break;
case VTA:
  Options.v().setPhaseOption("cg.spark", "on");
  Options.v().setPhaseOption("cg.spark", "vta:true");
  Options.v().setPhaseOption("cg.spark", "string-constants:true");
  break;
case SPARK:
  Options.v().setPhaseOption("cg", "trim-clinit:false");
  if (config.getEnableReflection())
    Options.v().setPhaseOption("cg", "types-for-invoke:true");
Options.v().setPhaseOption("jb.ulp", "off");

代码示例来源:origin: com.bugvm/bugvm-soot

String phaseName = (String) it.next();
String phaseOption = (String) it.next();
if( !setPhaseOption( phaseName, "enabled:true" ) ) return false;
String phaseName = (String) it.next();
String phaseOption = (String) it.next();
if( !setPhaseOption( phaseName, phaseOption ) ) return false;

代码示例来源:origin: edu.psu.cse.siis/coal

@Override
protected void initializeAnalysis(A commandLineArguments) {
 addSceneTransformer();
 Options.v().set_no_bodies_for_excluded(true);
 Options.v().set_allow_phantom_refs(true);
 Options.v().set_output_format(Options.output_format_none);
 Options.v().set_whole_program(true);
 Options.v().set_soot_classpath(
   commandLineArguments.getInput() + File.pathSeparator + commandLineArguments.getClasspath());
 Options.v().setPhaseOption("cg.spark", "on");
 // do not merge variables (causes problems with PointsToSets)
 Options.v().setPhaseOption("jb.ulp", "off");
 // Options.v().setPhaseOption("jb.ne", "off");
 Options.v().setPhaseOption("jb.uce", "remove-unreachable-traps:true");
 Options.v().setPhaseOption("cg", "trim-clinit:false");
 Options.v().set_prepend_classpath(true);
 Options.v().set_src_prec(Options.src_prec_java);
 for (String analysisClass : AnalysisParameters.v().getAnalysisClasses()) {
  SootClass sootClass = Scene.v().loadClassAndSupport(analysisClass);
  Scene.v().forceResolve(analysisClass, SootClass.BODIES);
  sootClass.setApplicationClass();
 }
 Scene.v().loadNecessaryClasses();
 Scene.v().setMainClassFromOptions();
 Scene.v().setEntryPoints(EntryPoints.v().application());
}

代码示例来源:origin: jayhorn/jayhorn

sootOpt.setPhaseOption("jop.cpf", "enabled:false");
sootOpt.set_allow_phantom_refs(true);

相关文章