summaryrefslogtreecommitdiff
path: root/kern_funcs.h
diff options
context:
space:
mode:
Diffstat (limited to 'kern_funcs.h')
-rw-r--r--kern_funcs.h28
1 files changed, 28 insertions, 0 deletions
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_