22 lines
962 B
C
22 lines
962 B
C
|
#pragma once
|
||
|
|
||
|
#include "utils.h"
|
||
|
#include "kernel.h"
|
||
|
#include "svc.h"
|
||
|
|
||
|
/// Operations for svcControlProcess
|
||
|
typedef enum ProcessOp
|
||
|
{
|
||
|
PROCESSOP_GET_ALL_HANDLES, ///< List all handles of the process, varg3 can be either 0 to fetch all handles, or token of the type to fetch
|
||
|
///< svcControlProcess(handle, PROCESSOP_GET_ALL_HANDLES, (u32)&outBuf, 0)
|
||
|
PROCESSOP_SET_MMU_TO_RWX, ///< Set the whole memory of the process with rwx access
|
||
|
///< svcControlProcess(handle, PROCESSOP_SET_MMU_TO_RWX, 0, 0)
|
||
|
PROCESSOP_GET_ON_MEMORY_CHANGE_EVENT,
|
||
|
PROCESSOP_GET_ON_EXIT_EVENT,
|
||
|
PROCESSOP_GET_PA_FROM_VA, ///< Get the physical address of the va within the process
|
||
|
///< svcControlProcess(handle, PROCESSOP_GET_PA_FROM_VA, (u32)&outPa, va)
|
||
|
PROCESSOP_SCHEDULE_THREADS,
|
||
|
} ProcessOp;
|
||
|
|
||
|
Result ControlProcess(Handle process, ProcessOp op, u32 varg2, u32 varg3);
|