| Index: third_party/afl/src/llvm_mode/afl-clang-fast.c
|
| diff --git a/third_party/afl/src/llvm_mode/afl-clang-fast.c b/third_party/afl/src/llvm_mode/afl-clang-fast.c
|
| index b9cedea954ad3d26d259f2b7b054d7f7d793ea07..725a16fa5149400306893514471724b3ba0326c4 100644
|
| --- a/third_party/afl/src/llvm_mode/afl-clang-fast.c
|
| +++ b/third_party/afl/src/llvm_mode/afl-clang-fast.c
|
| @@ -99,7 +99,7 @@ static void edit_params(u32 argc, char** argv) {
|
| u8 fortify_set = 0, asan_set = 0, x_set = 0, maybe_linking = 1, bit_mode = 0;
|
| u8 *name;
|
|
|
| - cc_params = ck_alloc((argc + 64) * sizeof(u8*));
|
| + cc_params = ck_alloc((argc + 128) * sizeof(u8*));
|
|
|
| name = strrchr(argv[0], '/');
|
| if (!name) name = argv[0]; else name++;
|
| @@ -130,6 +130,10 @@ static void edit_params(u32 argc, char** argv) {
|
|
|
| cc_params[cc_par_cnt++] = "-Qunused-arguments";
|
|
|
| + /* Detect stray -v calls from ./configure scripts. */
|
| +
|
| + if (argc == 1 && !strcmp(argv[1], "-v")) maybe_linking = 0;
|
| +
|
| while (--argc) {
|
| u8* cur = *(++argv);
|
|
|
| @@ -138,8 +142,8 @@ static void edit_params(u32 argc, char** argv) {
|
|
|
| if (!strcmp(cur, "-x")) x_set = 1;
|
|
|
| - if (!strcmp(cur, "-c") || !strcmp(cur, "-S") || !strcmp(cur, "-E") ||
|
| - !strcmp(cur, "-v")) maybe_linking = 0;
|
| + if (!strcmp(cur, "-c") || !strcmp(cur, "-S") || !strcmp(cur, "-E"))
|
| + maybe_linking = 0;
|
|
|
| if (!strcmp(cur, "-fsanitize=address") ||
|
| !strcmp(cur, "-fsanitize=memory")) asan_set = 1;
|
| @@ -196,6 +200,16 @@ static void edit_params(u32 argc, char** argv) {
|
|
|
| }
|
|
|
| + if (getenv("AFL_NO_BUILTIN")) {
|
| +
|
| + cc_params[cc_par_cnt++] = "-fno-builtin-strcmp";
|
| + cc_params[cc_par_cnt++] = "-fno-builtin-strncmp";
|
| + cc_params[cc_par_cnt++] = "-fno-builtin-strcasecmp";
|
| + cc_params[cc_par_cnt++] = "-fno-builtin-strncasecmp";
|
| + cc_params[cc_par_cnt++] = "-fno-builtin-memcmp";
|
| +
|
| + }
|
| +
|
| cc_params[cc_par_cnt++] = "-D__AFL_HAVE_MANUAL_CONTROL=1";
|
| cc_params[cc_par_cnt++] = "-D__AFL_COMPILER=1";
|
| cc_params[cc_par_cnt++] = "-DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION=1";
|
|
|