[LEDE-DEV] [PATCH procd 16/17] utrace: Support non-contiguous syscall numbers

Michal Sojka sojkam1 at fel.cvut.cz
Sun Sep 24 07:35:24 PDT 2017


On Tue, Sep 12 2017, Michal Sojka wrote:
> ARM architecture does not have its system call numbers contiguous. So
> far, utrace ignored the non-contiguous system calls, but it makes it
> difficult to setup seccomp whitelists. This patch adds support for
> these extra out-of-range syscalls.

This patch is buggy. I'll send fixed patch soon. The diff between this
and new patch is:

diff --git a/trace/trace.c b/trace/trace.c
index 2621430..6fb9335 100644
--- a/trace/trace.c
+++ b/trace/trace.c
@@ -193,7 +193,7 @@ static void tracer_cb(struct uloop_process *c, int ret)
                                 int syscall = ptrace(PTRACE_PEEKUSER, c->pid, reg_syscall_nr);
                                 int i = syscall_index(syscall);
                                 if (i >= 0) {
-                                        syscall_count[syscall]++;
+                                        syscall_count[i]++;
                                         if (debug)
                                                 fprintf(stderr, "%s()\n", syscall_name(syscall));
                                 } else if (debug) {


-Michal



More information about the Lede-dev mailing list