diff options
-rw-r--r-- | tests/16-sim-arch_basic.c | 3 | ||||
-rwxr-xr-x | tests/16-sim-arch_basic.py | 1 | ||||
-rw-r--r-- | tests/23-sim-arch_all_le_basic.c | 3 | ||||
-rwxr-xr-x | tests/23-sim-arch_all_le_basic.py | 1 | ||||
-rw-r--r-- | tests/26-sim-arch_all_be_basic.c | 3 | ||||
-rwxr-xr-x | tests/26-sim-arch_all_be_basic.py | 1 | ||||
-rwxr-xr-x | tests/regression | 6 | ||||
-rw-r--r-- | tools/scmp_arch_detect.c | 6 | ||||
-rw-r--r-- | tools/scmp_bpf_disasm.c | 4 | ||||
-rw-r--r-- | tools/scmp_bpf_sim.c | 4 |
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; |