aboutsummaryrefslogtreecommitdiff
path: root/lib/darwin/mach-decls.h
diff options
context:
space:
mode:
authorcomex2015-01-28 00:46:51 -0500
committercomex2015-01-28 00:46:51 -0500
commit4b14cb631b3f37502d76fe22aa4d6cd582cf00e4 (patch)
treeb5ab9897d5102e6366dc346fe53d28597a28f797 /lib/darwin/mach-decls.h
parentinitial commit of SafetyDance app (diff)
downloadsubstitute-4b14cb631b3f37502d76fe22aa4d6cd582cf00e4.tar.gz
some more stuff compiles
Diffstat (limited to 'lib/darwin/mach-decls.h')
-rw-r--r--lib/darwin/mach-decls.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/lib/darwin/mach-decls.h b/lib/darwin/mach-decls.h
new file mode 100644
index 0000000..29ea908
--- /dev/null
+++ b/lib/darwin/mach-decls.h
@@ -0,0 +1,31 @@
+#pragma once
+#include <stdint.h>
+
+struct _x86_thread_state_32 {
+ uint32_t eax, ebx, ecx, edx, edi, esi, ebp, esp;
+ uint32_t ss, eflags, eip, cs, ds, es, fs, gs;
+};
+#define _x86_thread_state_32_flavor 1
+struct _x86_thread_state_64 {
+ uint64_t rax, rbx, rcx, rdx, rdi, rsi, rbp, rsp;
+ uint64_t r8, r9, r10, r11, r12, r13, r14, r15;
+ uint64_t rip, rflags, cs, fs, gs;
+};
+#define _x86_thread_state_64_flavor 4
+struct _arm_thread_state_32 {
+ uint32_t r[13], sp, lr, pc, cpsr;
+};
+#define _arm_thread_state_32_flavor 9
+struct _arm_thread_state_64 {
+ uint64_t x[29], fp, lr, sp, pc;
+ uint32_t cpsr, pad;
+};
+#define _arm_thread_state_64_flavor 6
+
+kern_return_t mach_vm_read_overwrite(vm_map_t, mach_vm_address_t, mach_vm_size_t, mach_vm_address_t, mach_vm_size_t *);
+kern_return_t mach_vm_remap(vm_map_t, mach_vm_address_t *, mach_vm_size_t, mach_vm_offset_t, int, vm_map_t, mach_vm_address_t, boolean_t, vm_prot_t *, vm_prot_t *, vm_inherit_t);
+kern_return_t mach_vm_write(vm_map_t, mach_vm_address_t, vm_offset_t, mach_msg_type_number_t);
+kern_return_t mach_vm_allocate(vm_map_t, mach_vm_address_t *, mach_vm_size_t, int);
+kern_return_t mach_vm_deallocate(vm_map_t, mach_vm_address_t, mach_vm_size_t);
+kern_return_t mach_vm_region(vm_map_t, mach_vm_address_t *, mach_vm_size_t *, vm_region_flavor_t, vm_region_info_t, mach_msg_type_number_t *, mach_port_t *);
+