From 7bca6ad19e54e2edc4ec9cfa10da20a26e294334 Mon Sep 17 00:00:00 2001 From: Pwn20wnd Date: Sat, 9 Mar 2019 23:30:26 +0300 Subject: Merge pwn's changes to support arm64e via rebase --- kern_funcs.h | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'kern_funcs.h') diff --git a/kern_funcs.h b/kern_funcs.h index 83bb80c..e6633a7 100644 --- a/kern_funcs.h +++ b/kern_funcs.h @@ -1,6 +1,32 @@ #ifndef _KERN_FUNCS_H_ #define _KERN_FUNCS_H_ +#define SETOFFSET(offset, val) (offs.offset = val) +#define GETOFFSET(offset) offs.offset + +typedef struct { + uint64_t trustcache; + uint64_t kernel_task; + uint64_t pmap_load_trust_cache; + uint64_t paciza_pointer__l2tp_domain_module_start; + uint64_t paciza_pointer__l2tp_domain_module_stop; + uint64_t l2tp_domain_inited; + uint64_t sysctl__net_ppp_l2tp; + uint64_t sysctl_unregister_oid; + uint64_t mov_x0_x4__br_x5; + uint64_t mov_x9_x0__br_x1; + uint64_t mov_x10_x3__br_x6; + uint64_t kernel_forge_pacia_gadget; + uint64_t kernel_forge_pacda_gadget; + uint64_t IOUserClient__vtable; + uint64_t IORegistryEntry__getRegistryEntryID; + uint64_t pmap_loaded_trust_caches; +} offsets_t; + +extern offsets_t offs; +extern uint64_t kernel_base; +extern uint64_t kernel_slide; + void set_tfp0(mach_port_t port); void wk32(uint64_t kaddr, uint32_t val); void wk64(uint64_t kaddr, uint64_t val); @@ -9,5 +35,7 @@ uint64_t rk64(uint64_t kaddr); uint64_t kmem_alloc(uint64_t size); size_t kread(uint64_t where, void *p, size_t size); size_t kwrite(uint64_t where, const void *p, size_t size); +uint64_t task_self_addr(void); +int _pmap_load_trust_cache(uint64_t kernel_trust, size_t length); #endif // _KERN_FUNCS_H_ -- cgit v1.2.3