306 Commits

Author SHA1 Message Date
PMheart
e93624ab16
OcAppleKernelLib: Added ExtendBTFeatureFlags quirk (#126)
This quirk substitutes BT4LEContinuityFixup which actually fails to function properly due to late patching.
2020-10-02 11:31:03 +08: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
85d0532e17 OcAppleKernelLib: Fix previous commit 2020-09-13 11:49:02 -05:00
Goldfish64
d583e2031a OcAppleKernelLib: Only apply KC address fixup during block if KC 2020-09-13 10:57:53 -05:00
Goldfish64
c559acd81c OcAppleKernelLib: Do not abort if Info.plist is missing
Some versions of 10.4 may have kexts that do not have an Info.plist, but have plugins. We still want to scan any plugins in this case.
2020-09-12 18:52:22 -05:00
vit9696
bc6398fa30 OcAppleKernelLib: Fix typo in the previous commit 2020-09-06 12:02:30 +03:00
vit9696
2bde94afc5 OcAppleKernelLib: Added DisableLinkeditJettison quirk
This quirk is similar to keepsyms=1 but is potentially less intrusive.
Lilu needs to access __LINKEDIT to do symbol solving in the kernel.
2020-09-06 03:11:45 +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
53614abdad OcAppleKernelLib: Fix prelinked kext patches in KC mode 2020-09-02 10:21:00 +03:00
John Davis
8b452306e5
OpenCoreKernel: Implement force injection of system kexts (#111) 2020-08-27 18:52:53 +03:00
vit9696
f427a77d81 OcAppleKernelLib: Update PrelinkedStateKextsAddress after rebase
This lets kext patching work after injection on 10.6.8
2020-08-27 02:27:29 +03: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
Goldfish64
8e2755f29c OpenCoreKernel: Implement kernelcache fuzzy matching 2020-08-25 05:47:41 +03:00
vit9696
ee7aaa37e1 OcAppleKernelLib: Fix CFG lock patch for SNB 2020-08-23 22:03:16 +03:00
vit9696
57fc9000ad OcAppleKernelLib: Fixed LapicKernelPanic quirk on 10.8.5 2020-08-23 18:50:54 +03:00
vit9696
444365c87c OcAppleKernelLib: Fixed IncreasePciBarSize on 10.11.5 2020-08-23 17:32:10 +03:00
vit9696
ca6c829961 OcAppleKernelLib: Rework AppleCpuPmCfgLock to support 10.6.8 2020-08-23 17:04:08 +03:00
vit9696
c8c9ee5608 OcAppleKernelLib: Fixed XhciPortLimit on 10.12.6 2020-08-23 17:03:24 +03:00
vit9696
4b00ad2c1c OcAppleKernelLib: Improve error checking for kernel quirks (part 1) 2020-08-23 00:25:52 +03:00
vit9696
5ded24b71f OcAppleKernelLib: Expose kernel version to quirks 2020-08-22 22:28:28 +03:00
vit9696
d4b1f49b65 OcAppleKernelLib: Improve CPUID patch for 10.6 2020-08-22 21:17:31 +03:00
vit9696
dc923bc895 OcAppleKernelLib: Partially fix kext blocking for 11.0 2020-08-22 09:54:29 +03:00
vit9696
6f795d6a80 OcAppleKernelLib: Fix memory initialisation 2020-08-22 09:29:26 +03:00
vit9696
dde7432b62 OcAppleKernelLib: Implement KXLD symbolic solver 2020-08-22 09:11:28 +03:00
John Davis
818f9e3f57
32-bit kernel switching support (#104)
* OcMacInfoLib: Add 64-bit model compatibility function

* OcMacInfoLib: Fix previous commit

* OpenCorePlatform: Store current SMBIOS platform

* OpenCorePlatform: Fix variable

* OpenCoreKernel: Implement 32-bit kernel switching

* OpenCoreKernel: Force 32-bit on EFI32

* OpenCoreKernel: Fix previous commit
2020-08-21 22:31:19 -05:00
Goldfish64
442ec2f2c3 OcAppleKernelLib: Add ParseFatArchitecture status check 2020-08-20 14:19:42 -05:00
Goldfish64
342773ef34 OcAppleKernelLib: Use library FAT parsing 2020-08-20 12:05:56 -05:00
Goldfish64
5ea680a055 OcAppleKernelLib: Fix handling for codeless kexts 2020-08-19 11:25:41 -05:00
Goldfish64
5c92fe3098 OcAppleKernelLib: Fix cacheless codeless kext handling 2020-08-19 10:23:22 -05:00
vit9696
04fa1c2394
OcAppleKernelLib: Implement cacheless & mkext kext patching and quirks (#102) 2020-08-18 23:47:38 +03:00
vit9696
17e99ea36b OcAppleKernelLib: Fix compiler warnings 2020-08-17 00:04:34 +03:00
vit9696
70c55e03bb OcAppleKernelLib: Implement CPUID patching for 10.6 64-bit 2020-08-16 04:59:47 +03:00
vit9696
b5dcbd32d1
OcAppleKernelLib: Implement KXLD link state handling (#101) 2020-08-16 00:33:56 +03:00
vit9696
c3e14b6824
OcAppleKernelLib: Implement mkext injection support (#99) 2020-08-15 00:40:06 +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
459a769f83 OpenCoreUefi: Add immutablekernel loading support
references acidanthera/bugtracker#1071
2020-08-09 23:11:00 +03:00
Goldfish64
c9b719670e OcAppleKernelLib: Use original modified time for virtual SLE 2020-08-08 13:25:03 -05:00
vit9696
7e965893bd
OcAppleKernelLib: Implement 64-bit cacheless kext injection (#96)
references acidanthera/bugtracker#358
2020-08-08 20:05:23 +03:00
Goldfish64
cbdef704f4 OcXmlLib: Add plist doctype export option 2020-07-26 20:25:25 -05:00
vit9696
426a5dbe09 OcAppleKernelLib: Fixed OSXSAVE reporting when emulating CPUID on newer CPUs 2020-07-25 18:23:05 +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
802dcdbf19 OcAppleKernelLib: Fix arg order for OcKernelLoadKextsAndReserve 2020-07-07 00:14:45 +03:00
vit9696
57f4824a8e
OcAppleKernelLib: Older kernel kext base is lower 2020-07-06 00:31:14 +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