We should have configuration settings (checkboxes?) that allow us to enable or disable Manticore's various detectors (e.g. concrete OOB) for a particular under-constrained Manticore run.
Detectors can de enabled/disabled with a checkbox, but they usually take some parameters. One that is shared among all detectors is a boolean switch fast, telling whether manticore should stop exploring a state as soon as a detector is triggered. It sounds reasonable to me to always enable fast without exposing it to the UI for underconstrained tasks.
The underconstrained OOB detector is always enabled by default in UC mode, so we don't need to bother about that one.
Other detectors that can be exposed are:
the concrete heap OOB detector which doesn't take any arguments, so a checkbox would work for enabling/disabling it
possibly the VariableBoundsAccess, UninitializedVars, and UseAfterFree detectors (although they haven't really been tested in an under-constrained context). All three take an optional list of POIs as a parameter. I'm not sure what would be the best way to select and send POI information from the UI, cc @william.woodruff @ted
As regards the data format for detector options, it's documented in the mantiserve REST API documentation.
We should have configuration settings (checkboxes?) that allow us to enable or disable Manticore's various detectors (e.g. concrete OOB) for a particular under-constrained Manticore run.
Detectors can de enabled/disabled with a checkbox, but they usually take some parameters. One that is shared among all detectors is a boolean switch
fast
, telling whether manticore should stop exploring a state as soon as a detector is triggered. It sounds reasonable to me to always enablefast
without exposing it to the UI for underconstrained tasks.The underconstrained OOB detector is always enabled by default in UC mode, so we don't need to bother about that one. Other detectors that can be exposed are:
VariableBoundsAccess
,UninitializedVars
, andUseAfterFree
detectors (although they haven't really been tested in an under-constrained context). All three take an optional list of POIs as a parameter. I'm not sure what would be the best way to select and send POI information from the UI, cc @william.woodruff @tedAs regards the data format for detector options, it's documented in the mantiserve REST API documentation.