aboutsummaryrefslogtreecommitdiffstats
path: root/executor/executor_bsd.cc
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-06-07 15:32:16 +0200
committerDmitry Vyukov <dvyukov@google.com>2018-06-07 15:32:30 +0200
commit645e75f8038d1b177ead2d6ea0b3ade6f7f9d985 (patch)
treeabdb1ba3d8b7dff944d0ca84fc382bc0094f8635 /executor/executor_bsd.cc
parent7fb9023fd78f6c0641624e3169c405e384f14691 (diff)
executor: make syscall table and number constant
We see some crashes that suggest corruption of the syscall number: invalid command number 1296 (errno 11) invalid command number 107 (errno 110) Make the table and the number constant to prevent corruption.
Diffstat (limited to 'executor/executor_bsd.cc')
-rw-r--r--executor/executor_bsd.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/executor/executor_bsd.cc b/executor/executor_bsd.cc
index 0e8767626..4ae2cf223 100644
--- a/executor/executor_bsd.cc
+++ b/executor/executor_bsd.cc
@@ -8,8 +8,6 @@
#include "executor_posix.h"
-#include "executor.h"
-
// This file is used by both freebsd and netbsd (as a link to executor_bsd.cc).
#if defined(__FreeBSD__)
#include "syscalls_freebsd.h"
@@ -21,6 +19,8 @@
#define __syscall syscall
#endif
+#include "executor.h"
+
#include <fcntl.h>
#include <signal.h>
#include <sys/ioctl.h>
@@ -144,7 +144,7 @@ int main(int argc, char** argv)
return 0;
}
-long execute_syscall(call_t* c, long a0, long a1, long a2, long a3, long a4, long a5, long a6, long a7, long a8)
+long execute_syscall(const call_t* c, long a0, long a1, long a2, long a3, long a4, long a5, long a6, long a7, long a8)
{
if (c->call)
return c->call(a0, a1, a2, a3, a4, a5, a6, a7, a8);