diff options
-rw-r--r-- | frida_mode/src/seccomp/seccomp_callback.c | 16 | ||||
-rw-r--r-- | frida_mode/src/seccomp/seccomp_filter.c | 2 |
2 files changed, 18 insertions, 0 deletions
diff --git a/frida_mode/src/seccomp/seccomp_callback.c b/frida_mode/src/seccomp/seccomp_callback.c index bc488489..4232d842 100644 --- a/frida_mode/src/seccomp/seccomp_callback.c +++ b/frida_mode/src/seccomp/seccomp_callback.c @@ -52,6 +52,22 @@ static void seccomp_callback_filter(struct seccomp_notif * req, } free(syms); +#else + void **syms = (void **)__builtin_frame_address(0); + void *framep = __builtin_frame_address(1); + int i = 0; + + syms = framep; + while (syms) { + + framep = *syms; + syms = framep; + + if (!syms) break; + + seccomp_print("\%3d. %s\n", i ++, (char *)framep); + + } #endif resp->error = 0; diff --git a/frida_mode/src/seccomp/seccomp_filter.c b/frida_mode/src/seccomp/seccomp_filter.c index 8d56c367..7ee5ead1 100644 --- a/frida_mode/src/seccomp/seccomp_filter.c +++ b/frida_mode/src/seccomp/seccomp_filter.c @@ -2,7 +2,9 @@ #include <alloca.h> #include <errno.h> +#if !defined(__MUSL__) #include <execinfo.h> +#endif #include <linux/filter.h> #include <sys/ioctl.h> #include <sys/prctl.h> |