67 Commits

Author SHA1 Message Date
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
vit9696
b760f92fdb AppleKernelLib: Fix x86_64 OSBundleLibraries parsing and increase dependency limit 2019-03-26 22:13:20 +03:00
Download-Fritz
93fe656deb OcAppleKernelLib: OSBundleLibraries are optional. 2019-03-26 19:10:15 +01:00
Download-Fritz
181c393670 OcAppleKernelLib: Make prelinked VTable generation safer. 2019-03-26 12:19:43 +01:00
Download-Fritz
a455f1ebd3 OcAppleKernelLib: Store the Name pointer instead of StringIndex for prelinked symbols. 2019-03-25 19:11:22 +01:00
Download-Fritz
f534cf5874 OcAppleKernelLib: Fix VTable bounds checks.
* Only iterate Parent VTables within its bounds.
* Verify Child VTable size early as due to the parent's bounds, the next iteration step might not be reached.
* Do not verify MaxSize on retrieval when the VTableData is passed to a VTable function that checks it on its own.
2019-03-25 07:34:04 +01:00
vit9696
bc0af1edee OcAppleKernelLib: Optimize hot path on vtable lookup 2019-03-24 17:32:58 +03:00
Download-Fritz
896610d256 OcAppleKernelLib: Rework dependency symbol location. 2019-03-24 13:17:59 +01:00
vit9696
e169a7aa7e Ensure 1:1 disk:vm mach-o matching requirement during kext inject 2019-03-24 01:50:57 +03:00
Download-Fritz
a9c1f22db3 OcMachoLib: Optionally return MaxSize parameter for GetFileOffset.
OcAppleKernelLib: Adapt calls for security.
2019-03-23 17:36:40 +01:00
vit9696
fc6fbed67c Fix symbol retrieval logic in injected kext, still needs dysymtab correction 2019-03-23 15:05:13 +03:00
vit9696
e063fb9578 Fix kext size calculation during kernel injection 2019-03-23 15:05:13 +03:00
Download-Fritz
3f2d5aeda0 OcAppleKernelLib: Discard undefined and resolve indirect symbols of KPIs. 2019-03-23 15:05:12 +03:00
Download-Fritz
be49076782 OcAppleKernelLib: Always add the kernel as a dependency 2019-03-23 15:05:12 +03:00
Download-Fritz
75d81cce1a OcAppleKernelLib: Bounds-check VTable data. 2019-03-23 15:05:12 +03:00