From 8c02b193711caa0017ac7c6aa3289de5be33a4e2 Mon Sep 17 00:00:00 2001 From: Alex Groce Date: Fri, 27 Jul 2018 16:58:58 -0700 Subject: [PATCH] move to .c --- src/include/deepstate/DeepState.h | 33 ------------------------------- src/lib/DeepState.c | 33 +++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/src/include/deepstate/DeepState.h b/src/include/deepstate/DeepState.h index aa363f4..8a24179 100644 --- a/src/include/deepstate/DeepState.h +++ b/src/include/deepstate/DeepState.h @@ -719,39 +719,6 @@ static int DeepState_RunSavedTestCases(void) { return num_failed_tests; } -extern int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { - if (Size > sizeof(DeepState_Input)) { - return 0; // Just ignore any too-big inputs - } - - struct DeepState_TestInfo *test = NULL; - - DeepState_Setup(); - -#ifdef LIBFUZZER_WHICH_TEST - for (test = DeepState_FirstTest(); test != NULL; test = test->prev) { - if (strncmp(LIBFUZZER_WHICH_TEST, test->test_name, strlen(FLAGS_input_which_test)) == 0) { - break; - } - } -#else - test = DeepState_FirstTest(); -#endif - - memset((void *) DeepState_Input, 0, sizeof(DeepState_Input)); - DeepState_InputIndex = 0; - - memcpy((void *) DeepState_Input, (void *) Data, Size); - - DeepState_Begin(test); - - enum DeepState_TestRunResult result = DeepState_ForkAndRunTest(test); - - DeepState_Teardown(); - - return 0; // Non-zero return values are reserved for future use. -} - /* Start DeepState and run the tests. Returns the number of failed tests. */ static int DeepState_Run(void) { if (!DeepState_OptionsAreInitialized) { diff --git a/src/lib/DeepState.c b/src/lib/DeepState.c index 112cbda..6e01212 100644 --- a/src/lib/DeepState.c +++ b/src/lib/DeepState.c @@ -544,6 +544,39 @@ bool DeepState_CatchAbandoned(void) { return DeepState_CurrentTestRun->result == DeepState_TestRunAbandon; } +extern int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { + if (Size > sizeof(DeepState_Input)) { + return 0; // Just ignore any too-big inputs + } + + struct DeepState_TestInfo *test = NULL; + + DeepState_Setup(); + +#ifdef LIBFUZZER_WHICH_TEST + for (test = DeepState_FirstTest(); test != NULL; test = test->prev) { + if (strncmp(LIBFUZZER_WHICH_TEST, test->test_name, strlen(FLAGS_input_which_test)) == 0) { + break; + } + } +#else + test = DeepState_FirstTest(); +#endif + + memset((void *) DeepState_Input, 0, sizeof(DeepState_Input)); + DeepState_InputIndex = 0; + + memcpy((void *) DeepState_Input, (void *) Data, Size); + + DeepState_Begin(test); + + enum DeepState_TestRunResult result = DeepState_ForkAndRunTest(test); + + DeepState_Teardown(); + + return 0; // Non-zero return values are reserved for future use. +} + /* Overwrite libc's abort. */ void abort(void) { DeepState_Fail();