mirror of
https://github.com/switchbrew/libnx.git
synced 2025-06-22 21:02:39 +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 svcReadDebugProcessMemory(void* buffer, Handle debug, u64 addr, u64 size);
|
||||||
Result svcWriteDebugProcessMemory(Handle debug, void* buffer, u64 addr, u64 size);
|
Result svcWriteDebugProcessMemory(Handle debug, void* buffer, u64 addr, u64 size);
|
||||||
Result svcManageNamedPort(Handle* portServer, const char* name, s32 maxSessions);
|
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 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 svcCreateProcess(Handle* out, void* proc_info, u32* caps, u64 cap_num);
|
||||||
Result svcStartProcess(Handle proc, s32 main_prio, s32 default_cpu, u32 stack_size);
|
Result svcStartProcess(Handle proc, s32 main_prio, s32 default_cpu, u32 stack_size);
|
||||||
u64 svcCallSecureMonitor(SecmonArgs* regs);
|
u64 svcCallSecureMonitor(SecmonArgs* regs);
|
||||||
|
@ -48,6 +48,7 @@ typedef enum {
|
|||||||
PERM_NONE = 0,
|
PERM_NONE = 0,
|
||||||
PERM_R = 1,
|
PERM_R = 1,
|
||||||
PERM_W = 2,
|
PERM_W = 2,
|
||||||
|
PERM_X = 4,
|
||||||
PERM_RW = PERM_R | PERM_W,
|
PERM_RW = PERM_R | PERM_W,
|
||||||
PERM_DONTCARE = 0x10000000
|
PERM_DONTCARE = 0x10000000
|
||||||
} Permission;
|
} Permission;
|
||||||
|
@ -324,11 +324,26 @@ SVC_BEGIN svcManageNamedPort
|
|||||||
ret
|
ret
|
||||||
SVC_END
|
SVC_END
|
||||||
|
|
||||||
|
SVC_BEGIN svcSetProcessMemoryPermission
|
||||||
|
svc 0x73
|
||||||
|
ret
|
||||||
|
SVC_END
|
||||||
|
|
||||||
SVC_BEGIN svcMapProcessMemory
|
SVC_BEGIN svcMapProcessMemory
|
||||||
svc 0x74
|
svc 0x74
|
||||||
ret
|
ret
|
||||||
SVC_END
|
SVC_END
|
||||||
|
|
||||||
|
SVC_BEGIN svcMapProcessCodeMemory
|
||||||
|
svc 0x77
|
||||||
|
ret
|
||||||
|
SVC_END
|
||||||
|
|
||||||
|
SVC_BEGIN svcUnmapProcessCodeMemory
|
||||||
|
svc 0x78
|
||||||
|
ret
|
||||||
|
SVC_END
|
||||||
|
|
||||||
SVC_BEGIN svcCreateProcess
|
SVC_BEGIN svcCreateProcess
|
||||||
str x0, [sp, #-16]!
|
str x0, [sp, #-16]!
|
||||||
svc 0x79
|
svc 0x79
|
||||||
|
Loading…
Reference in New Issue
Block a user