class Taint(object):
Represent a started taint in the backend, allowing to retrieve the taint results.
Warnings
This object is not meant to be constructed directly. Use reven2.preview.taint.Tainter instead.
Examples
>>> trace = reven_server.trace() >>> tainter = reven2.preview.taint.Tainter(trace) >>> taint = tainter.simple_taint("rax") >>> # At this point taint object can be used to retrieve results >>> # get taint status >>> taint.progress().status ProgressStatus.Running
| Method | __init__ | Undocumented | 
| Method | __repr__ | Undocumented | 
| Method | __str__ | Undocumented | 
| Method | accesses | Get a view of the taint accesses. See TaintAccessViewandTaintResultView | 
| Method | cancel | Cancel this taint. | 
| Method | progress | Get the current taint progress information. See Progress | 
| Method | state | Get the taint state corresponding to a given context. | 
| Method | states | Get a view of the taint states. See TaintStateViewandTaintResultView | 
| Method | warnings | Get a view of the taint warnings. See TaintWarningViewandTaintResultView | 
| Instance Variable | _taint | Undocumented | 
| Instance Variable | _trace | Undocumented | 
Undocumented
| Parameters | |
| trace: _Trace | Undocumented | 
| taint _TaintData | Undocumented | 
Get a view of the taint accesses. See TaintAccessView and TaintResultView
Information
| Parameters | |
| changes bool | bool, if True the view will filter accesses that do not change the taint state. | 
| fetch int | integer Technical parameter indicating how many accesses should be fetched from the server per query. Modifying this parameter allows to fine-tune performance according to the current use-case: 
 NOTE: Modifying this parameter does not modify the results of the query. | 
| Returns | |
| TaintAccessView | A TaintAccessViewinstance. | 
Cancel this taint.
Cancelling the taint causes the taint to stop producing results if the taint isn't finished yet.
Cancelling the taint does not discard already computed results, that remain accessible using TaintResultView.
If the taint is already finished when calling Taint.cancel, cancelling the taint has no effect.
Get the taint state corresponding to a given context.
Warnings
This function is a blocking function, it will return when the state is ready. If you need a non-blocking function try using states().filter_be_context_range(context).available()
Examples
>>> taint.state_at(trace.context_before(10)) TaintState(context=Context before #10)
Information
| Parameters | |
| context: _Context | reven2.trace.Contextat which the taint state is requested | 
| Returns | |
| _Optional[ | A TaintStateinstance if context is in the tainted context range or None otherwise. | 
Get a view of the taint states. See TaintStateView and TaintResultView
Information
| Parameters | |
| fetch int | integer Technical parameter indicating how many states should be fetched from the server per query. Modifying this parameter allows to fine-tune performance according to the current use-case: 
 NOTE: Modifying this parameter does not modify the results of the query. | 
| Returns | |
| TaintStateView | A TaintStateViewinstance. | 
Get a view of the taint warnings. See TaintWarningView and TaintResultView
Information
| Parameters | |
| fetch int | integer Technical parameter indicating how many warnings should be fetched from the server per query. Modifying this parameter allows to fine-tune performance according to the current use-case: 
 NOTE: Modifying this parameter does not modify the results of the query. | 
| Returns | |
| TaintWarningView | A TaintWarningViewinstance. |