Pārlūkot izejas kodu

kernel: Add missing address space check in SetMemoryAttribute syscall (#2771)

Mary 4 gadi atpakaļ
vecāks
revīzija
e7e65ccbc9
1 mainītis faili ar 5 papildinājumiem un 0 dzēšanām
  1. 5 0
      Ryujinx.HLE/HOS/Kernel/SupervisorCall/Syscall.cs

+ 5 - 0
Ryujinx.HLE/HOS/Kernel/SupervisorCall/Syscall.cs

@@ -845,6 +845,11 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
 
             KProcess process = KernelStatic.GetCurrentProcess();
 
+            if (!process.MemoryManager.InsideAddrSpace(position, size))
+            {
+                return KernelResult.InvalidMemState;
+            }
+
             KernelResult result = process.MemoryManager.SetMemoryAttribute(
                 position,
                 size,