Supports the specification and solving of data-flow problems.
To be able to express data-flow problems at a very high-level of abstraction.
I.e., that some information flows or not-flows
from a well-identified source to a well-identified sink.
4. Extending data-flows (Side Channels)
Furthermore, the framework will automatically handle taint propagation and aliasing.
I.e., a tainted value that is stored in a field automatically marks the respective
field as tainted.
Characterizes a data-flow problem.
Characterizes a data-flow problem. The characterization consists of the specification
of the problem as well as the selection of the solver.
I.e., tries to find paths from the identified sources to the identified sinks.
Overall initialization is done in multiple steps.
Support methods to make it possible to solve a single DataFlowProblem.
Mix in this trait in the object which specifies your data-flow problem. After
that you can run it.
Implements the infrastructure for solving a data-flow problem.