diff options
author | van Hauser <vh@thc.org> | 2021-10-12 14:29:30 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-12 14:29:30 +0200 |
commit | ea05d4ed134f69fc8df12c27c4fa633aea45484b (patch) | |
tree | 5929c6441dbc42f9ba27e4e8b2397657b2c0cd73 | |
parent | 28df6d5a576b4ddc241223f2908d0f42ba7ef0bd (diff) | |
parent | 269dc29efe920abf3935d2052e11dfb94ec799e2 (diff) | |
download | afl++-ea05d4ed134f69fc8df12c27c4fa633aea45484b.tar.gz |
Merge pull request #1115 from devnexen/frida_mode_build_fix_non_x8664_arch
frida mode fix on x86_64 archs
-rw-r--r-- | frida_mode/GNUmakefile | 8 | ||||
-rw-r--r-- | frida_mode/src/instrument/instrument_arm32.c | 4 | ||||
-rw-r--r-- | frida_mode/src/instrument/instrument_arm64.c | 3 | ||||
-rw-r--r-- | frida_mode/src/instrument/instrument_x64.c | 7 | ||||
-rw-r--r-- | frida_mode/src/instrument/instrument_x86.c | 3 |
5 files changed, 19 insertions, 6 deletions
diff --git a/frida_mode/GNUmakefile b/frida_mode/GNUmakefile index ab6efecf..4d6d7147 100644 --- a/frida_mode/GNUmakefile +++ b/frida_mode/GNUmakefile @@ -30,9 +30,7 @@ AFL_CFLAGS:=-Wno-unused-parameter \ LDFLAGS+=-shared \ -lpthread \ - -lresolv \ - -ldl \ - -lrt + -lresolv ifdef DEBUG CFLAGS+=-Werror \ @@ -72,7 +70,9 @@ ifdef DEBUG endif LDFLAGS+= -z noexecstack \ -Wl,--gc-sections \ - -Wl,--exclude-libs,ALL + -Wl,--exclude-libs,ALL \ + -ldl \ + -lrt LDSCRIPT:=-Wl,--version-script=$(PWD)frida.map endif diff --git a/frida_mode/src/instrument/instrument_arm32.c b/frida_mode/src/instrument/instrument_arm32.c index 0e15940a..4b0a648e 100644 --- a/frida_mode/src/instrument/instrument_arm32.c +++ b/frida_mode/src/instrument/instrument_arm32.c @@ -22,6 +22,10 @@ void instrument_coverage_optimize(const cs_insn * instr, } +void instrument_coverage_optimize_init(void) { + WARNF("Optimized coverage not supported on this architecture"); +} + void instrument_flush(GumStalkerOutput *output) { gum_arm_writer_flush(output->writer.arm); diff --git a/frida_mode/src/instrument/instrument_arm64.c b/frida_mode/src/instrument/instrument_arm64.c index cf37e048..80d1d845 100644 --- a/frida_mode/src/instrument/instrument_arm64.c +++ b/frida_mode/src/instrument/instrument_arm64.c @@ -95,6 +95,9 @@ void instrument_coverage_optimize(const cs_insn * instr, } +void instrument_coverage_optimize_init(void) { +} + void instrument_flush(GumStalkerOutput *output) { gum_arm64_writer_flush(output->writer.arm64); diff --git a/frida_mode/src/instrument/instrument_x64.c b/frida_mode/src/instrument/instrument_x64.c index dc040a20..60f443e0 100644 --- a/frida_mode/src/instrument/instrument_x64.c +++ b/frida_mode/src/instrument/instrument_x64.c @@ -1,10 +1,13 @@ #include <fcntl.h> #include <stddef.h> -#include <asm/prctl.h> #include <sys/mman.h> -#include <sys/syscall.h> #include <sys/shm.h> +#if defined(__linux__) +#include <asm/prctl.h> +#include <sys/syscall.h> +#endif + #include "frida-gumjs.h" #include "config.h" diff --git a/frida_mode/src/instrument/instrument_x86.c b/frida_mode/src/instrument/instrument_x86.c index 7bf48f96..1ff5c920 100644 --- a/frida_mode/src/instrument/instrument_x86.c +++ b/frida_mode/src/instrument/instrument_x86.c @@ -83,6 +83,9 @@ void instrument_coverage_optimize(const cs_insn * instr, } +void instrument_coverage_optimize_init(void) { +} + void instrument_flush(GumStalkerOutput *output) { gum_x86_writer_flush(output->writer.x86); |