summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/16-sim-arch_basic.c3
-rwxr-xr-xtests/16-sim-arch_basic.py1
-rw-r--r--tests/23-sim-arch_all_le_basic.c3
-rwxr-xr-xtests/23-sim-arch_all_le_basic.py1
-rw-r--r--tests/26-sim-arch_all_be_basic.c3
-rwxr-xr-xtests/26-sim-arch_all_be_basic.py1
-rwxr-xr-xtests/regression6
-rw-r--r--tools/scmp_arch_detect.c6
-rw-r--r--tools/scmp_bpf_disasm.c4
-rw-r--r--tools/scmp_bpf_sim.c4
10 files changed, 29 insertions, 3 deletions
diff --git a/tests/16-sim-arch_basic.c b/tests/16-sim-arch_basic.c
index 8e54c0a..f253f2c 100644
--- a/tests/16-sim-arch_basic.c
+++ b/tests/16-sim-arch_basic.c
@@ -59,6 +59,9 @@ int main(int argc, char *argv[])
rc = seccomp_arch_add(ctx, SCMP_ARCH_MIPSEL);
if (rc != 0)
goto out;
+ rc = seccomp_arch_add(ctx, SCMP_ARCH_MIPSEL64);
+ if (rc != 0)
+ goto out;
rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(read), 1,
SCMP_A0(SCMP_CMP_EQ, STDIN_FILENO));
diff --git a/tests/16-sim-arch_basic.py b/tests/16-sim-arch_basic.py
index e2020e3..671a1f4 100755
--- a/tests/16-sim-arch_basic.py
+++ b/tests/16-sim-arch_basic.py
@@ -36,6 +36,7 @@ def test(args):
f.add_arch(Arch("x32"))
f.add_arch(Arch("arm"))
f.add_arch(Arch("mipsel"))
+ f.add_arch(Arch("mipsel64"))
f.add_rule(ALLOW, "read", Arg(0, EQ, sys.stdin.fileno()))
f.add_rule(ALLOW, "write", Arg(0, EQ, sys.stdout.fileno()))
f.add_rule(ALLOW, "write", Arg(0, EQ, sys.stderr.fileno()))
diff --git a/tests/23-sim-arch_all_le_basic.c b/tests/23-sim-arch_all_le_basic.c
index 1035d1d..597482b 100644
--- a/tests/23-sim-arch_all_le_basic.c
+++ b/tests/23-sim-arch_all_le_basic.c
@@ -59,6 +59,9 @@ int main(int argc, char *argv[])
rc = seccomp_arch_add(ctx, seccomp_arch_resolve_name("mipsel"));
if (rc != 0)
goto out;
+ rc = seccomp_arch_add(ctx, seccomp_arch_resolve_name("mipsel64"));
+ if (rc != 0)
+ goto out;
rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(read), 1,
SCMP_A0(SCMP_CMP_EQ, STDIN_FILENO));
diff --git a/tests/23-sim-arch_all_le_basic.py b/tests/23-sim-arch_all_le_basic.py
index ba794ae..af77c86 100755
--- a/tests/23-sim-arch_all_le_basic.py
+++ b/tests/23-sim-arch_all_le_basic.py
@@ -36,6 +36,7 @@ def test(args):
f.add_arch(Arch("x32"))
f.add_arch(Arch("arm"))
f.add_arch(Arch("mipsel"))
+ f.add_arch(Arch("mipsel64"))
f.add_rule(ALLOW, "read", Arg(0, EQ, sys.stdin.fileno()))
f.add_rule(ALLOW, "write", Arg(0, EQ, sys.stdout.fileno()))
f.add_rule(ALLOW, "write", Arg(0, EQ, sys.stderr.fileno()))
diff --git a/tests/26-sim-arch_all_be_basic.c b/tests/26-sim-arch_all_be_basic.c
index 251dcf7..e2aab2a 100644
--- a/tests/26-sim-arch_all_be_basic.c
+++ b/tests/26-sim-arch_all_be_basic.c
@@ -46,6 +46,9 @@ int main(int argc, char *argv[])
rc = seccomp_arch_add(ctx, seccomp_arch_resolve_name("mips"));
if (rc != 0)
goto out;
+ rc = seccomp_arch_add(ctx, seccomp_arch_resolve_name("mips64"));
+ if (rc != 0)
+ goto out;
rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(read), 1,
SCMP_A0(SCMP_CMP_EQ, STDIN_FILENO));
diff --git a/tests/26-sim-arch_all_be_basic.py b/tests/26-sim-arch_all_be_basic.py
index 4c78252..e6635e3 100755
--- a/tests/26-sim-arch_all_be_basic.py
+++ b/tests/26-sim-arch_all_be_basic.py
@@ -31,6 +31,7 @@ def test(args):
f = SyscallFilter(KILL)
f.remove_arch(Arch())
f.add_arch(Arch("mips"))
+ f.add_arch(Arch("mips64"))
f.add_rule(ALLOW, "read", Arg(0, EQ, sys.stdin.fileno()))
f.add_rule(ALLOW, "write", Arg(0, EQ, sys.stdout.fileno()))
f.add_rule(ALLOW, "write", Arg(0, EQ, sys.stderr.fileno()))
diff --git a/tests/regression b/tests/regression
index b2e75a1..ee286c1 100755
--- a/tests/regression
+++ b/tests/regression
@@ -21,8 +21,8 @@
# along with this library; if not, see <http://www.gnu.org/licenses>.
#
-GLBL_ARCH_LE_SUPPORT="x86 x86_64 x32 arm mipsel"
-GLBL_ARCH_BE_SUPPORT="mips"
+GLBL_ARCH_LE_SUPPORT="x86 x86_64 x32 arm mipsel mipsel64"
+GLBL_ARCH_BE_SUPPORT="mips mips64"
GLBL_SYS_ARCH="../tools/scmp_arch_detect"
GLBL_SYS_RESOLVER="../tools/scmp_sys_resolver"
@@ -629,7 +629,7 @@ function run_test_live() {
rc_trace=162
rc_errno=163
;;
- mips|mipsel)
+ mips|mipsel|mips64|mipsel64)
rc_kill=140
rc_allow=160
rc_trap=161
diff --git a/tools/scmp_arch_detect.c b/tools/scmp_arch_detect.c
index 02d291b..217af84 100644
--- a/tools/scmp_arch_detect.c
+++ b/tools/scmp_arch_detect.c
@@ -84,6 +84,12 @@ int main(int argc, char *argv[])
case SCMP_ARCH_MIPSEL:
printf("mipsel\n");
break;
+ case SCMP_ARCH_MIPS64:
+ printf("mips64\n");
+ break;
+ case SCMP_ARCH_MIPSEL64:
+ printf("mipsel64\n");
+ break;
default:
printf("unknown\n");
}
diff --git a/tools/scmp_bpf_disasm.c b/tools/scmp_bpf_disasm.c
index d7babbe..ca99f07 100644
--- a/tools/scmp_bpf_disasm.c
+++ b/tools/scmp_bpf_disasm.c
@@ -324,6 +324,10 @@ int main(int argc, char *argv[])
arch = AUDIT_ARCH_MIPS;
else if (strcmp(optarg, "mipsel") == 0)
arch = AUDIT_ARCH_MIPSEL;
+ else if (strcmp(optarg, "mips64") == 0)
+ arch = AUDIT_ARCH_MIPS64;
+ else if (strcmp(optarg, "mipsel64") == 0)
+ arch = AUDIT_ARCH_MIPSEL64;
else
exit_usage(argv[0]);
break;
diff --git a/tools/scmp_bpf_sim.c b/tools/scmp_bpf_sim.c
index e910c64..fbe9df6 100644
--- a/tools/scmp_bpf_sim.c
+++ b/tools/scmp_bpf_sim.c
@@ -239,6 +239,10 @@ int main(int argc, char *argv[])
arch = AUDIT_ARCH_MIPS;
else if (strcmp(optarg, "mipsel") == 0)
arch = AUDIT_ARCH_MIPSEL;
+ else if (strcmp(optarg, "mips64") == 0)
+ arch = AUDIT_ARCH_MIPS64;
+ else if (strcmp(optarg, "mipsel64") == 0)
+ arch = AUDIT_ARCH_MIPSEL64;
else
exit_fault(EINVAL);
break;