public class RecursivePathBuilder extends AbstractAbstractionPathBuilder
IAbstractionPathBuilder.OnPathBuilderResultAvailableIMemoryBoundedSolver.IMemoryBoundedSolverStatusNotificationlogger, manager, pathConfig, resultAvailableHandlers| 构造器和说明 |
|---|
RecursivePathBuilder(InfoflowManager manager,
heros.solver.CountingThreadPoolExecutor executor)
Creates a new instance of the
RecursivePathBuilder class |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
addStatusListener(IMemoryBoundedSolver.IMemoryBoundedSolverStatusNotification listener)
Adds a new listener that will be notified of status changes in the solver
|
void |
computeTaintPaths(Set<AbstractionAtSink> res)
Computes the path of tainted data between the source and the sink
|
void |
forceTerminate(ISolverTerminationReason reason)
Forces the solver to terminate its tasks and stop processing new tasks.
|
InfoflowResults |
getResults()
Gets the constructed result paths
|
ISolverTerminationReason |
getTerminationReason()
In case this solver was killed before it could complete its task, this
method returns the reason for the abortion.
|
boolean |
isKilled()
Checks whether this solver was killed before it could complete its tasks
|
boolean |
isTerminated()
Checks whether this solver is terminated, either by forced termination,
or because it has finished all of its work.
|
void |
reset()
Resets the solver to its initial state after it has been forcefully
terminated.
|
void |
runIncrementalPathCompuation()
Incrementally runs the path builder after some paths have already been
computed.
|
addResultAvailableHandlerpublic RecursivePathBuilder(InfoflowManager manager, heros.solver.CountingThreadPoolExecutor executor)
RecursivePathBuilder classmanager - The data flow manager that gives access to the icfg
and other objectsconfig - The configuration of the data flow solverexecutor - The executor in which to run the path reconstruction
tasksreconstructPaths - True if the exact propagation path between source and
sink shall be reconstructed.public void computeTaintPaths(Set<AbstractionAtSink> res)
IAbstractionPathBuilderres - The data flow tracker resultspublic InfoflowResults getResults()
IAbstractionPathBuilderpublic void runIncrementalPathCompuation()
IAbstractionPathBuilderpublic void forceTerminate(ISolverTerminationReason reason)
IMemoryBoundedSolverreason - The reason why the solver is terminatedpublic boolean isTerminated()
IMemoryBoundedSolverpublic boolean isKilled()
IMemoryBoundedSolverpublic void reset()
IMemoryBoundedSolverpublic void addStatusListener(IMemoryBoundedSolver.IMemoryBoundedSolverStatusNotification listener)
IMemoryBoundedSolverlistener - The listener that will be notified when the status of the
solver changespublic ISolverTerminationReason getTerminationReason()
IMemoryBoundedSolverCopyright © 2022 Fraunhofer SIT. All rights reserved.