Browse Source

fuzz-syscalls: Mark sys$emuctl() as someone who returns ENOSYS

This syscall is only relevant inside UserspaceEmulator and the kernel
will just return ENOSYS for it.
Andreas Kling 4 years ago
parent
commit
a77ecac900
1 changed files with 2 additions and 2 deletions
  1. 2 2
      Userland/Tests/Kernel/fuzz-syscalls.cpp

+ 2 - 2
Userland/Tests/Kernel/fuzz-syscalls.cpp

@@ -48,7 +48,7 @@ static bool is_unfuzzable_syscall(int fn)
 
 
 static bool is_nosys_syscall(int fn)
 static bool is_nosys_syscall(int fn)
 {
 {
-    return fn == SC_futex;
+    return fn == SC_futex || fn == SC_emuctl;
 }
 }
 
 
 static bool is_bad_idea(int fn, const size_t* direct_sc_args, const size_t* fake_sc_params, const char* some_string)
 static bool is_bad_idea(int fn, const size_t* direct_sc_args, const size_t* fake_sc_params, const char* some_string)
@@ -85,7 +85,7 @@ static void do_systematic_tests()
         }
         }
         // This is pure torture
         // This is pure torture
         rc = syscall(Syscall::Function(i), 0xc0000001, 0xc0000002, 0xc0000003);
         rc = syscall(Syscall::Function(i), 0xc0000001, 0xc0000002, 0xc0000003);
-        VERIFY(rc != -ENOSYS);
+        VERIFY(rc != -ENOSYS || is_nosys_syscall(i));
     }
     }
 
 
     // Finally, test invalid syscalls:
     // Finally, test invalid syscalls: