Marvin Häuser
d916dd65b8
OcMachoLib: Treat container Mach-O as reference file
...
As of macOS 13 Developer Beta 3, the Kernel Collection's inner kernel
references a segment that precedes itself. The current model is that
a Kernel Collection is a container format and the included files are
(mostly) separate. Hence, this was treated as an out-of-bounds issue.
Kernel Collections apparently are rather an unconventional composite
format, where the sub-files are still part of the whole. Redesign
OcMachoLib to treat the Kernel Collection as the reference file.
Patches still use only the inner file, while parsing considers the
whole file.
2022-07-07 17:52:25 +02:00
PMheart
228f8ca1fb
Codestyle: Apply codestyle changes with Uncrustify
2022-04-25 14:51:15 +02:00
Marvin Häuser
3db6e1b996
Fix includes to work nicer with IDEs
2021-11-23 10:55:26 +01:00
Download-Fritz
72649849dd
OcAppleKernelLib: Rebuild KC when no kexts are injected
...
Fixes an issue where __PRELINK_INFO (first segment) is relocated and thus renders relocations invalid (relative to the first segment's VA)
2020-10-25 14:15:01 +01:00
Download-Fritz
6ffd979500
OcAppleKernelLib: Fix invalid kremlin section
2020-10-25 14:15:01 +01:00
John Davis
676ef93d9d
OcAppleKernelLib: Add 32-bit prelinking support ( #122 )
2020-09-29 12:41:37 +03:00
John Davis
74062d4e0f
OcAppleKernelLib: Add 32-bit Mach-O and patching support ( #118 )
2020-09-13 22:57:10 +03:00
vit9696
6df942413c
OcAppleKernelLib: Fix issues in 11.0 kext injection and patching
...
- KcGetKextSize may report far larger kext size due to using segment
address instead of kext address as a base.
- KC Mach-O header rebuild may make Context->LinkEditSegment point
to invalid memory breaking KcGetKextSize in the kext patcher.
2020-09-04 15:28:08 +03:00
vit9696
dc923bc895
OcAppleKernelLib: Partially fix kext blocking for 11.0
2020-08-22 09:54:29 +03:00
vit9696
32bf419136
OcAppleKernelLib: Fix memory corruption with many kexts in 11.0
2020-07-18 04:40:37 +03:00
Download-Fritz
f1e8766af9
Utilities/KextInject: Determine Info/EXE reserve sizes
2020-07-17 23:01:41 +02:00
vit9696
748b0ea20e
OcAppleKernelLib: Fix incorrect assertion on zero relocations
2020-07-07 12:13:57 +03:00
vit9696
d8ace47606
OcAppleKernelLib: Fix patching KC vtables with imports from kexts
2020-07-05 23:18:10 +03:00
vit9696
9e166de9ac
Utilities: Drop separate KC utility and unify with KextInject
2020-07-05 20:57:13 +03:00
vit9696
27053778bc
OcAppleKernelLib: Fix relocation support for EfiBoot in KC mode
2020-07-05 18:54:38 +03:00
vit9696
ef8fdce8cd
OcAppleKernelLib: Fix linking against injected kexts
2020-07-05 04:23:43 +03:00
vit9696
1ef945991a
OcAppleKernelLib: Fix __LINKEDIT handling in KC mode
2020-07-04 19:04:06 +03:00
Download-Fritz
07b697d28d
OcMachoLib: Support KC Mach-Os
2020-07-04 15:28:22 +02:00
vit9696
0271bacc27
OcAppleKernelLib: More progress with 11.0, many thx to @Download-Fritz
2020-07-04 01:58:04 +03:00
vit9696
44081eb08b
OcAppleKernelLib: Make more progress with KC context init
2020-06-29 00:27:35 +03:00
Download-Fritz
95421ebbd7
OcAppleKernelLib/Kc: Import generation of DYLD fixups for KEXTs
2020-06-28 17:52:25 +02:00
Download-Fritz
9f7634a790
OcAppleKernelLib/Kc: Import DYLD fixup chain converion
2020-06-28 17:08:35 +02:00
vit9696
ebdc3fa056
OcAppleKernelLib: Start building new Mach-O functions
2020-06-27 20:55:16 +03:00