public class JvmTaintBamCpaRun<OuterAbstractStateT extends AbstractState> extends JvmBamCpaRun<SimpleCpa,TaintAbstractState,OuterAbstractStateT>
JvmTaintCpa.cfa, heapModelabortOperator, cpa| Constructor and Description |
|---|
JvmTaintBamCpaRun(JvmCfa cfa,
java.util.Set<TaintSource> taintSources,
MethodSignature mainMethodSignature,
int maxCallStackDepth)
Create a CPA run with a forgetful heap model.
|
JvmTaintBamCpaRun(JvmCfa cfa,
java.util.Set<TaintSource> taintSources,
MethodSignature mainMethodSignature,
int maxCallStackDepth,
HeapModel heapModel,
AbortOperator abortOperator)
Create a CPA run.
|
| Modifier and Type | Method and Description |
|---|---|
ExpandOperator<JvmCfaNode,JvmCfaEdge,MethodSignature> |
createExpandOperator()
Returns the expand operator.
|
SimpleCpa |
createIntraproceduralCPA()
Returns the intraprocedural CPA.
|
java.util.Collection<OuterAbstractStateT> |
getInitialStates()
Returns a collection of initial
AbstractStates. |
MethodSignature |
getMainSignature()
Returns the signature of the main procedure.
|
createReachedSet, createReduceOperator, getCfacreateCache, createRebuildOperator, getCpa, getMaxCallStackDepthcreateWaitlist, execute, getAbortOperatorpublic JvmTaintBamCpaRun(JvmCfa cfa, java.util.Set<TaintSource> taintSources, MethodSignature mainMethodSignature, int maxCallStackDepth, HeapModel heapModel, AbortOperator abortOperator)
cfa - a CFAtaintSources - a set of taint sourcesmainMethodSignature - the signature of the main methodmaxCallStackDepth - the maximum depth of the call stack analyzed interprocedurally
0 means intraprocedural analysis
< 0 means no maximum depthheapModel - a heap model to be usedabortOperator - an abort operatorpublic JvmTaintBamCpaRun(JvmCfa cfa, java.util.Set<TaintSource> taintSources, MethodSignature mainMethodSignature, int maxCallStackDepth)
cfa - a CFAtaintSources - a set of taint sourcesmainMethodSignature - the signature of the main methodmaxCallStackDepth - maximum depth of the call stack analyzed inter-procedurally.
0 means intra-procedural analysis.
< 0 means no maximum depth.public SimpleCpa createIntraproceduralCPA()
BamCpaRuncreateIntraproceduralCPA in class BamCpaRun<SimpleCpa,OuterAbstractStateT extends AbstractState,JvmCfaNode,JvmCfaEdge,MethodSignature>public ExpandOperator<JvmCfaNode,JvmCfaEdge,MethodSignature> createExpandOperator()
BamCpaRuncreateExpandOperator in class BamCpaRun<SimpleCpa,OuterAbstractStateT extends AbstractState,JvmCfaNode,JvmCfaEdge,MethodSignature>public MethodSignature getMainSignature()
BamCpaRungetMainSignature in class BamCpaRun<SimpleCpa,OuterAbstractStateT extends AbstractState,JvmCfaNode,JvmCfaEdge,MethodSignature>public java.util.Collection<OuterAbstractStateT> getInitialStates()
CpaRunAbstractStates.getInitialStates in class CpaRun<BamCpa<JvmCfaNode,JvmCfaEdge,MethodSignature>,OuterAbstractStateT extends AbstractState>