Suppose I have a program that has two functions, functionA
and functionB
called sequentially.
functionA
requires a significant amount of processing in order to execute, and in the course of the execution sets up and maintains many global variables referenced by functionB
.
I want to fuzz input to functionB
, but having to run functionA
first forces me to wait about 10 seconds before I can see the results of a particular test.
How can I save the program state after executing functionA
and resume at functionB
when I want to run a set of tests?
Additionally, what mechanisms are there to alter the program variables to reflect the new fuzzing values?