mirror of
https://github.com/switchbrew/libnx.git
synced 2025-06-21 12:32:40 +02:00
Added svcSetProcessMemoryPermission and svcMapProcessCodeMemory/svcUnmapProcessCodeMemory. Added PERM_X.
This commit is contained in:
parent
197b1900a1
commit
eec1fc2fcc
@ -77,7 +77,10 @@ Result svcQueryDebugProcessMemory(MemoryInfo* meminfo_ptr, u32* pageinfo, Handle
|
||||
Result svcReadDebugProcessMemory(void* buffer, Handle debug, u64 addr, u64 size);
|
||||
Result svcWriteDebugProcessMemory(Handle debug, void* buffer, u64 addr, u64 size);
|
||||
Result svcManageNamedPort(Handle* portServer, const char* name, s32 maxSessions);
|
||||
Result svcSetProcessMemoryPermission(Handle proc, u64 addr, u64 size, u32 perm);
|
||||
Result svcMapProcessMemory(void* dst, Handle proc, u64 src, u64 size);
|
||||
Result svcMapProcessCodeMemory(Handle proc, u64 dst, u64 src, u64 size);
|
||||
Result svcUnmapProcessCodeMemory(Handle proc, u64 dst, u64 src, u64 size);
|
||||
Result svcCreateProcess(Handle* out, void* proc_info, u32* caps, u64 cap_num);
|
||||
Result svcStartProcess(Handle proc, s32 main_prio, s32 default_cpu, u32 stack_size);
|
||||
u64 svcCallSecureMonitor(SecmonArgs* regs);
|
||||
|
@ -48,6 +48,7 @@ typedef enum {
|
||||
PERM_NONE = 0,
|
||||
PERM_R = 1,
|
||||
PERM_W = 2,
|
||||
PERM_X = 4,
|
||||
PERM_RW = PERM_R | PERM_W,
|
||||
PERM_DONTCARE = 0x10000000
|
||||
} Permission;
|
||||
|
@ -324,11 +324,26 @@ SVC_BEGIN svcManageNamedPort
|
||||
ret
|
||||
SVC_END
|
||||
|
||||
SVC_BEGIN svcSetProcessMemoryPermission
|
||||
svc 0x73
|
||||
ret
|
||||
SVC_END
|
||||
|
||||
SVC_BEGIN svcMapProcessMemory
|
||||
svc 0x74
|
||||
ret
|
||||
SVC_END
|
||||
|
||||
SVC_BEGIN svcMapProcessCodeMemory
|
||||
svc 0x77
|
||||
ret
|
||||
SVC_END
|
||||
|
||||
SVC_BEGIN svcUnmapProcessCodeMemory
|
||||
svc 0x78
|
||||
ret
|
||||
SVC_END
|
||||
|
||||
SVC_BEGIN svcCreateProcess
|
||||
str x0, [sp, #-16]!
|
||||
svc 0x79
|
||||
|
Loading…
Reference in New Issue
Block a user