Package proguard.analysis.cpa.util
Class TaintAnalyzerResult.TaintAnalysisResult
java.lang.Object
proguard.analysis.cpa.util.TaintAnalyzerResult.TaintAnalysisResult
- Enclosing class:
- TaintAnalyzerResult
Results for taint analysis. Provides the reached states and which sinks were triggered, but no
witness trace on how the sink was reached from a source (use
TaintAnalyzerResult.getTraceReconstructionResult() for that).-
Method Summary
Modifier and TypeMethodDescriptionGet locations where sinks have been triggered by a valid source.Maps locations where sinks have been triggered by valid sources to the triggered sink.Returns the reached states for the entry method of the analysis.Returns the analysis cache, containing the analyzed taints for each reached method invocation with unique tainted parameters.
-
Method Details
-
getTaintResultCache
Returns the analysis cache, containing the analyzed taints for each reached method invocation with unique tainted parameters. -
getMainMethodReachedSet
public ProgramLocationDependentReachedSet<JvmAbstractState<SetAbstractState<JvmTaintSource>>> getMainMethodReachedSet()Returns the reached states for the entry method of the analysis. -
getEndpoints
public Collection<BamLocationDependentJvmMemoryLocation<SetAbstractState<JvmTaintSource>>> getEndpoints()Get locations where sinks have been triggered by a valid source.The endpoints are computed lazily, since it can be an expensive operation, and multiple runs of
TaintAnalyzer.analyze(MethodSignature)just update the same cache. So, if the sameTaintAnalyzerperforms several runs, it's better to get the endpoints only after all runs have been executed. -
getEndpointToTriggeredSinks
public Map<BamLocationDependentJvmMemoryLocation<SetAbstractState<JvmTaintSource>>,List<JvmTaintSink>> getEndpointToTriggeredSinks()Maps locations where sinks have been triggered by valid sources to the triggered sink.The endpoints are computed lazily, since it can be an expensive operation, and multiple runs of
TaintAnalyzer.analyze(MethodSignature)just update the same cache. So, if the sameTaintAnalyzerperforms several runs, it's better to get the endpoints only after all runs have been executed.
-