# modules to include or ignore included_mods = readmodfile(incmodfile) ignored_mods = readmodfile(ignmodfile) original_inputs = RandomInputMutator(args + files, NullMutator) expanded_input_generator = RandomInputMutator(args + files, RandomExpanderMutator) mutated_input_generator = RandomInputMutator(args + files, RandomByteMutator) app = Process(program, envs, timeout, included_mods, ignored_mods, no_stdout=not show_stdout) prt = TypePrinter("/dev/stdout", program) # unchanged input null_mutt, original_input = original_inputs.next() original_events = app.getData(prepare_inputs(original_input)) if original_events is None: print "Execution of", program, "failed!" exit(-1) # prt.set_original_events(original_events) prt.print_events(null_mutt, original_events) for (i, (d, mutated)) in enumerate(expanded_input_generator): # if app.timeouted(): # sys.exit(-1) if i >= max_mut: break
RandomExpanderMutator) mutated_input_generator = RandomInputMutator(args + files, RandomByteMutator) app = Process(program, envs, timeout, included_mods, ignored_mods, no_stdout=not show_stdout) prt = TypePrinter("/dev/stdout", program) # unchanged input null_mutt, original_input = original_inputs.next() original_events = app.getData(prepare_inputs(original_input)) if original_events is None: print "Execution of", program, "failed!" exit(-1) #prt.set_original_events(original_events) prt.print_events(null_mutt, original_events) for (i, (d, mutated)) in enumerate(expanded_input_generator): #if app.timeouted(): # sys.exit(-1) if i >= max_mut: break
ignored_mods = readmodfile(ignmodfile) #if modfile is not None: # hooked_mods = open(modfile).read().split("\n") # hooked_mods = filter(lambda x: x <> '', hooked_mods) original_inputs = InputMutator(args, files, NullMutator) #mutated_inputs = InputMutator(args, files, BruteForceMutator) #expanded_inputs = InputMutator(args, files, BruteForceExpander) crazy_inputs = RandomInputMutator(args, files, SurpriseMutator) app = Process(program, envs, included_mods, ignored_mods, no_stdout = not show_stdout ) classes = dict() classes['crashed:eip'] = 'B' classes['*'] = 'R' prt = Printer("/dev/stdout", program) #map(prt.filter_by, filters) # unchanged input delta, original_input = original_inputs.next() original_events = app.getData(original_input) if original_events is None: print "Execution of",program,"failed!" exit(-1) #prt.set_original_events(original_events) prt.print_events(program, original_events)