Right now, we enable the fuzzing button as soon as the wizard returns (and gives us a valid set of targetable functions):
def wizard_finished(self, wizard_output):
""" Dump the results of a wizard run to the target file and rebuild the tree """
if wizard_output:
self.target_data.set_target_list(wizard_output)
self.build_func_tree()
self.fuzzer_button.setEnabled(True)
else:
QtWidgets.QMessageBox.critical(None, "Wizard failure",
"No wizard results; is the target 64-bit?")
We should defer that until the user actually selects one or more functions to fuzz, as running the fuzzer without any selections is essentially a no-op (and may confuse the user into thinking that they don't need to select anything).
Right now, we enable the fuzzing button as soon as the wizard returns (and gives us a valid set of targetable functions):
We should defer that until the user actually selects one or more functions to fuzz, as running the fuzzer without any selections is essentially a no-op (and may confuse the user into thinking that they don't need to select anything).