From 85ca0df98988cdb235e1d0cb9b156affc5afc80e Mon Sep 17 00:00:00 2001 From: David Carlier Date: Mon, 25 Oct 2021 06:53:45 +0100 Subject: frida mode musl build fix --- frida_mode/GNUmakefile | 3 +++ frida_mode/src/seccomp/seccomp_callback.c | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/frida_mode/GNUmakefile b/frida_mode/GNUmakefile index ed35c9f6..b5fee7a6 100644 --- a/frida_mode/GNUmakefile +++ b/frida_mode/GNUmakefile @@ -78,6 +78,9 @@ endif ifeq "$(shell uname)" "Linux" OS:=linux + ifneq "$(findstring musl, $(shell ldd --version 2>&1 | head -n 1))" "" + CFLAGS+= -D__MUSL__ + endif endif ifneq "$(findstring android, $(shell $(CC) --version 2>/dev/null))" "" diff --git a/frida_mode/src/seccomp/seccomp_callback.c b/frida_mode/src/seccomp/seccomp_callback.c index a88196ac..bc488489 100644 --- a/frida_mode/src/seccomp/seccomp_callback.c +++ b/frida_mode/src/seccomp/seccomp_callback.c @@ -1,6 +1,8 @@ #if defined(__linux__) && !defined(__ANDROID__) +#if !defined(__MUSL__) #include +#endif #include #include "seccomp.h" @@ -29,6 +31,7 @@ static void seccomp_callback_filter(struct seccomp_notif * req, req->data.args[0], req->data.args[1], req->data.args[2], req->data.args[3], req->data.args[4], req->data.args[5]); +#if !defined(__MUSL__) seccomp_print("FRAMES: (%u)\n", frames->len); char **syms = backtrace_symbols(frames->items, frames->len); if (syms == NULL) { FATAL("Failed to get symbols"); } @@ -49,6 +52,7 @@ static void seccomp_callback_filter(struct seccomp_notif * req, } free(syms); +#endif resp->error = 0; resp->val = 0; -- cgit 1.4.1