| 499 | } |
| 500 | |
| 501 | int MinimizeCrashInputInternalStep(Fuzzer *F, InputCorpus *Corpus) { |
| 502 | assert(Inputs->size() == 1); |
| 503 | std::string InputFilePath = Inputs->at(0); |
| 504 | Unit U = FileToVector(InputFilePath); |
| 505 | Printf("INFO: Starting MinimizeCrashInputInternalStep: %zd\n", U.size()); |
| 506 | if (U.size() < 2) { |
| 507 | Printf("INFO: The input is small enough, exiting\n"); |
| 508 | exit(0); |
| 509 | } |
| 510 | F->SetMaxInputLen(U.size()); |
| 511 | F->SetMaxMutationLen(U.size() - 1); |
| 512 | F->MinimizeCrashLoop(U); |
| 513 | Printf("INFO: Done MinimizeCrashInputInternalStep, no crashes found\n"); |
| 514 | exit(0); |
| 515 | } |
| 516 | |
| 517 | void Merge(Fuzzer *F, FuzzingOptions &Options, |
| 518 | const std::vector<std::string> &Args, |
no test coverage detected