4 #ifndef TAI_PATCHES_HEADER 5 #define TAI_PATCHES_HEADER 7 #include "taihen_internal.h" 28 void cache_flush(SceUID pid, uintptr_t vma,
size_t len);
32 SceUID
tai_inject_abs(SceUID pid,
void *dest,
const void *src,
size_t size);
38 #endif // TAI_PATCHES_HEADER uintptr_t tai_hook_ref_t
Hook information.
int tai_hook_release(SceUID uid, tai_hook_ref_t hook_ref)
Removes a hook and restores original function if chain is empty.
int patches_init(void)
Initializes the patch system.
SceUID tai_inject_abs(SceUID pid, void *dest, const void *src, size_t size)
Inserts a raw data injection given an absolute address and PID of the address space.
int tai_try_cleanup_process(SceUID pid)
Called on process exist to force remove private hooks.
SceUID tai_hook_func_abs(tai_hook_ref_t *p_hook, SceUID pid, void *dest_func, const void *hook_func)
Inserts a hook given an absolute address and PID of the function.
int tai_inject_release(SceUID uid)
Removes an injection and restores the original data.
int tai_memcpy_to_kernel(SceUID src_pid, void *dst, const char *src, size_t size)
Memcpy from a process to kernel.
void cache_flush(SceUID pid, uintptr_t vma, size_t len)
Flush L1 and L2 cache for an address.
void patches_deinit(void)
Cleans up the patch system.