Index: third_party/afl/src/afl-gcc.c |
diff --git a/third_party/afl/src/afl-gcc.c b/third_party/afl/src/afl-gcc.c |
index b6cbc05c801fdda24e0cc66508c602d100b68806..1a588da978e5e5eca9ea801d463c587081c3135b 100644 |
--- a/third_party/afl/src/afl-gcc.c |
+++ b/third_party/afl/src/afl-gcc.c |
@@ -116,7 +116,7 @@ static void edit_params(u32 argc, char** argv) { |
u8 m32_set = 0; |
#endif |
- 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++; |
@@ -271,6 +271,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] = NULL; |
} |