| 528 | } |
| 529 | |
| 530 | pub struct FuzzwareEnvironment { |
| 531 | uc_ptr: *mut uc_engine, |
| 532 | |
| 533 | /// Debug info loaded into the environment. |
| 534 | debug_info: DebugInfo, |
| 535 | |
| 536 | /// The path to the ELF binary for the currently configured target. |
| 537 | pub elf_path: Option<PathBuf>, |
| 538 | |
| 539 | /// The value saved value used for restoring coverage information after masking. |
| 540 | saved_prev: Option<u64>, |
| 541 | |
| 542 | /// Handles fixing coverage state between interrupts. |
| 543 | masking: CovMasking, |
| 544 | |
| 545 | /// Controls whether interrupts should be triggered by halts. |
| 546 | trigger_interrupt_on_halt: bool, |
| 547 | |
| 548 | /// The varnode associated with the XPSR register. |
| 549 | xpsr: pcode::VarNode, |
| 550 | |
| 551 | /// A custom exit condition requested by Fuzzware code. |
| 552 | fuzzware_exit: Option<fuzzware::uc_err::Type>, |
| 553 | } |
| 554 | |
| 555 | impl Default for FuzzwareEnvironment { |
| 556 | fn default() -> Self { |
nothing calls this directly
no outgoing calls
no test coverage detected