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
PMheart
95b487a2a3
OcAppleKernelLib: Kext block strategy for prelinked ( #320 )
2022-02-11 10:54:30 +01:00
John Davis
91439cb72d
OcAppleKernelLib: Implement correct OSBundleLibraries handling
...
OSBundleLibraries will be used on 32-bit when OSBundleLibraries and OSBundleLibraries64 are present, and OSBundleLibraries64 will be used on 64-bit when both are present.
2021-07-09 19:36:49 -05:00
Marvin Häuser
e1ee8d3578
OcAppleKernelLib: Fix potential NULL dereferences
...
Fixes Coverity 302191 and 302192
2021-02-21 10:42:19 +01:00
Marvin Häuser
3133f08db1
OcAppleKernelLib: Fix potential NULL dereference
...
Fixes Coverity 302189
2021-02-21 10:42:19 +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
Goldfish64
18ce64b408
OcAppleKernelLib: Fix previous commit
2020-09-13 12:16:24 -05:00
Goldfish64
d583e2031a
OcAppleKernelLib: Only apply KC address fixup during block if KC
2020-09-13 10:57:53 -05:00
vit9696
520d27d66d
OcAppleKernelLib: Fix KPI handling in 10.6 prelinkedkernel
...
Resolves issues injecting AppleIntelE1000e.kext referencing IOLockLock
2020-08-27 01:38:13 +03:00
vit9696
dde7432b62
OcAppleKernelLib: Implement KXLD symbolic solver
2020-08-22 09:11:28 +03:00
vit9696
b5dcbd32d1
OcAppleKernelLib: Implement KXLD link state handling ( #101 )
2020-08-16 00:33:56 +03:00
vit9696
f48c647b70
OcAppleKernelLib: Fix solving kernel symbols to zero in 11.0
...
Observed with Black80211 when trying to solve Black80211Control vtable
imports from IONetworkingFamily. When trying to look up
__ZNK19IONetworkController11getFeaturesEv it will be found not just in
IONetworkingFamily but also IO80211Family, where it is going to be
external undefined, i.e. Type = 0x1.
2020-08-10 21:28:39 +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
vit9696
605878e57a
OcAppleKernelLib: Partially fix symbol resolution from kexts
2020-07-04 17:10:03 +03:00
Download-Fritz
07b697d28d
OcMachoLib: Support KC Mach-Os
2020-07-04 15:28:22 +02:00
vit9696
e09b29d7e0
OcAppleKernelLib: Fix legacy kernel injection
2020-07-04 15:29:38 +03:00
vit9696
0271bacc27
OcAppleKernelLib: More progress with 11.0, many thx to @Download-Fritz
2020-07-04 01:58:04 +03:00
Download-Fritz
2ae43ab055
OcAppleKernelLib: Support KC kernel symbols and fix PLIST
2020-06-29 20:34:01 +02:00
vit9696
764c5c2277
OcAppleKernelLib: Continue working on KC prelinking
2020-06-29 08:45:42 +03:00
vit9696
44081eb08b
OcAppleKernelLib: Make more progress with KC context init
2020-06-29 00:27:35 +03:00
vit9696
e6bec3ae80
Debug: Fix some log tags
2020-05-17 16:53:02 +03:00
Download-Fritz
cf05a42605
OcAppleKernelLib: Relieve __LINKEDIT presence expectations
...
KPIs in Mountain Lion expose symbols but do not have a __LINKEDIT segment.
2020-04-23 22:24:00 +02:00
vit9696
3ec848da3d
Build: Replace RETURN_ macros with EFI_
2020-04-18 15:55:05 +03:00
hieplpvip
91b1575828
OcAppleKernelLib: Fix typo in InternalGetQuirkDependencyKext ( #16 )
2019-10-06 13:50:35 +03:00
Download-Fritz
4917e8d73e
OcGuardLib: Introduce OC_ALIGNOF and deprecate OC_ALIGNED
2019-08-28 15:37:55 +02:00
Download-Fritz
c8ffdfc13d
OcAppleKernelLib: Ignore all missing kext dependencies
2019-07-07 20:30:30 +02:00
Download-Fritz
5b61c4e776
OcAppleKernelLib: W/A Catalina PLIST-only dependency
2019-07-06 22:31:36 +02:00
vit9696
951a668bc4
OcAppleKernelLib: Clarify Vtable TODO
2019-07-06 18:56:13 +03:00
Download-Fritz
ac698454a1
OcAppleKernelLib: Re-construct VTables to W/A StringTable relocation
2019-07-06 11:05:21 +02:00
Download-Fritz
8424fbebe1
OcAppleKernelLib: Allow KEXTs to not have a __LINKEDIT segment
2019-06-13 10:47:39 +02:00
Download-Fritz
7b06cbe369
OcAppleKernelLib: Fix LinkBuffer expansion for injected kexts past the first
2019-04-10 18:05:51 +02:00
Download-Fritz
aa490fa0e3
OcAppleKernelLib: Cosmetical changes.
2019-04-05 21:04:05 +02:00
Download-Fritz
a2945176f5
OcCompressionLib: Use zlib for MSVC. Remove sshzlib.
2019-04-05 14:00:51 +02:00
vit9696
dfe7f8f5d4
analysis: Fix warnings
2019-04-03 06:37:38 +03:00
vit9696
7f296b49d0
OcAppleKernelLib: Fix vtable building for dependency kexts
2019-04-01 18:53:44 +03:00
vit9696
20ebb4c57c
OcAppleKernelLib: Add invariants for Mach-O context creation
2019-03-29 23:46:56 +03:00
vit9696
8255f23ff0
OcAppleKernelLib: Tune based on profiling data
2019-03-29 01:24:04 +03:00
Download-Fritz
5fa14fe4b6
OcAppleKernelLib: Rework memory leak fixes.
2019-03-28 12:24:49 +01:00
vit9696
9c64d37094
OcAppleKernelLib: Fix more memory leaks
2019-03-28 13:05:50 +03:00
Download-Fritz
be4d877b02
OcAppleKernelLib: Fix possible VTable memory leak on failure.
2019-03-28 10:24:48 +01:00
Download-Fritz
c8e4fe99da
OcAppleKernelLib: Fix more BOOLEAN->EFI_STATUS.
2019-03-28 09:52:42 +01:00
Download-Fritz
3906be2bc8
OcAppleKernelLib: Fix return type BOOLEAN->EFI_STATUS.
2019-03-28 09:49:53 +01:00
Download-Fritz
69ff0f89e4
OcAppleKernelLib: Prevent memory leak on SymbolTable construction failure.
2019-03-28 09:22:20 +01:00
Download-Fritz
5e1df94834
OcAppleKernelLib: Fix LinkedVtables memory leak.
2019-03-27 20:06:49 +01:00
vit9696
f7f7a6795f
OcAppleKernelLib: Implement workaround for linking against IOHIDSystem
2019-03-27 18:52:37 +03:00
Download-Fritz
27e0783af3
OcAppleKernelLib: Lookup prelinked VTables via Prelinked Symbol Table.
2019-03-27 13:52:09 +01:00
Download-Fritz
ad5d46f9af
AppleOcKernelLib: Do not index STAB symbols when scanning prelinked KEXTs.
2019-03-27 13:08:56 +01:00