183 Commits

Author SHA1 Message Date
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
vit9696
6a69e34638 OcMachoLib: Drop LC_MAIN/LC_UNIX_THREAD warnings due to i386 compat 2021-02-27 19:53:32 +03:00
PMheart
04a82d01da OcMachoLib: Fix codestyle 2021-02-13 11:36:45 +08:00
Goldfish64
0c99e037f5 OcMachoLib: Fix improper file offset cast in MachoExpandImage 2020-10-18 13:17:25 -05: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
dde7432b62 OcAppleKernelLib: Implement KXLD symbolic solver 2020-08-22 09:11:28 +03:00
vit9696
40f81f29f7 OcBootManagementLib: Implement FAT image loading 2020-08-17 01:43:19 +03:00
vit9696
c3e14b6824
OcAppleKernelLib: Implement mkext injection support (#99) 2020-08-15 00:40:06 +03:00
vit9696
365e6ad569 OcMachoLib: Fix compiler warning 2020-07-05 23:37:18 +03:00
vit9696
995924032c OcAppleKernelLib: Get kernel patcher work (mostly) 2020-07-05 04:23:43 +03:00
vit9696
0b3dcf4f7e OcAppleKernelLib: Improve handling of KC DySymtab 2020-07-04 20:21:37 +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
Download-Fritz
275c78bbd7 OcMachoLib: Add API to externally retrieve symbols 2020-06-29 20:28:23 +02:00
Download-Fritz
5d0b9f4832 OcMachoLib: Remove redundant alignment checks 2020-06-29 19:31:36 +02:00
vit9696
83b77fff56 OcMachoLib: Fix MSVC warning 2020-06-28 19:18:47 +03:00
Download-Fritz
0ad48de5b4 OcMachoLib: Make the LC retrieval API public 2020-06-28 17:47:19 +02:00
vit9696
de272bf210 OcMachoLib: Fix KC init and segment merging 2020-06-28 12:01:54 +03:00
vit9696
ebdc3fa056 OcAppleKernelLib: Start building new Mach-O functions 2020-06-27 20:55:16 +03:00
vit9696
e6bec3ae80 Debug: Fix some log tags 2020-05-17 16:53:02 +03:00
vit9696
a9cbcd9ae8 Build: Drop EfiPkg 2020-05-17 14:28:41 +03:00
vit9696
97585cb6c2 Build: Remove OcSupportPkg usage 2020-02-29 17:39:41 +03:00
vit9696
4421b5a758 OcBootManagementLib: Debug restyle 2019-11-04 18:51:48 +03:00
Download-Fritz
05127da085 OcMachoLib: Add explicit casts to silence MSVC for IA32 targets 2019-11-03 16:46:35 +01:00
Download-Fritz
1d2e449f56 Multiple: Fix 32-bit linking issues 2019-11-03 15:43:59 +01:00
Download-Fritz
156cb7c586 Various type and cast fixes 2019-11-02 23:16:33 +01:00
Download-Fritz
6c882e1cbc OcMachoLib/OcAppleKernelLib: Support Kernel Resource KEXTs 2019-09-07 17:28:36 +02:00
Download-Fritz
ce893c085a OcMachoLib: Remove unused variable 2019-08-28 17:18:27 +02:00
Download-Fritz
27217c9a9f OcMachoLib: Revert incorrect changes from last commit 2019-08-28 17:13:51 +02:00
Download-Fritz
1c27b3a65e OcMachoLib: Prevent accidential VTable sym matches via overflow 2019-08-28 16:44:43 +02:00
Download-Fritz
c698bcb68c OcMachoLib: Fix security and parsing issues 2019-08-28 16:02:19 +02:00
Download-Fritz
4917e8d73e OcGuardLib: Introduce OC_ALIGNOF and deprecate OC_ALIGNED 2019-08-28 15:37:55 +02:00
vit9696
a2d69bd0ca Build: Fix metadata header inclusion
closes acidanthera/bugtracker#374
2019-06-11 23:17:14 +03:00
vit9696
e011d9030f OcMachoLib: Implement MachoRuntimeGetEntryAddress 2019-04-30 22:08:08 +03:00
Download-Fritz
4203232842 OcMachoLib: Do not ASSERT on Section->SegmentName mismatch. 2019-04-05 13:30:25 +02:00
vit9696
dfe7f8f5d4 analysis: Fix warnings 2019-04-03 06:37:38 +03:00
Download-Fritz
e17d99deb4 OcMachoLib: Fail when image is to be dynamically linked and lacks DySymtab. 2019-03-29 12:43:45 +01:00
Download-Fritz
826d078efd OcMachoLib and OcAppleMachoLib: Silence type warnings. 2019-03-29 10:38:42 +01:00
vit9696
f0268b6ed3 OcMachoLib: Fix expansion of images with segment size mismatch before last 2019-03-28 22:56:51 +03:00
vit9696
737e17c847 OcMachoLib: Implement support for unpacking FAT images 2019-03-27 19:36:25 +03:00
Download-Fritz
bbea9dba45 OcMachoLib: Retrieve symbol section via Section instead of Value. 2019-03-26 23:16:56 +01:00
Download-Fritz
2ac0ee8085 OcMachoLib: Correctly detect symbol definition and section type. 2019-03-26 23:16:56 +01:00
Download-Fritz
f1ab3b85e9 OcAppleKernelLib: STAB symbols are not considered defined. 2019-03-26 22:23:25 +01:00
vit9696
b9988453e3 OcMachoLib: Fix symbol type comparison 2019-03-27 00:10:21 +03:00
Download-Fritz
61244b5fca OcMachoLib and OcAppleKernelLib: Properly error-check section indices. 2019-03-26 21:20:17 +01:00
Download-Fritz
7aa35ede0e OcMachoLib: Skip section-based relocs with ABS SymbolNumber. 2019-03-26 21:10:57 +01:00
Download-Fritz
c814d82ef1 OcMachoLib: Introduce GetSymbolbyExternReloc API. 2019-03-26 17:18:02 +01:00
Download-Fritz
ff3563866d OcMachoLib: Sanity-check symbols referenced by local relocs. 2019-03-26 17:02:02 +01:00