Download-Fritz
37e30743fd
OcAppleKernelLib: Do not resolve STABs or use them for kmod_info/SMCPs.
2019-03-26 23:16:56 +01:00
PMheart
9f791d4392
OcAppleKernelLib: Corrected mistakes in PatchUsbXhciPortLimit.
2019-03-27 05:42:59 +08: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
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
362d2ba795
OcAppleKernelLib: Verify VTable length only via extern relocs.
2019-03-26 17:18:22 +01:00
Download-Fritz
074c25fcc9
OcAppleKernelLib: Fix VTable patching walk.
2019-03-26 17:01:05 +01:00
Download-Fritz
f23304aeda
OcAppleKernelLib: Make VTable iteration easier to read.
2019-03-26 16:40:42 +01:00
Download-Fritz
6e002e3259
OcAppleKernelLib: Slightly nicer VTable patch construction.
2019-03-26 16:35:24 +01:00
Download-Fritz
4c518b90f6
OcAppleKernelLib: Two VTables are constructed per iteration.
2019-03-26 16:34:21 +01:00
Download-Fritz
d40c3b96b5
OcAppleKernelLib: Do not mess up VTable entry order.
2019-03-26 16:02:00 +01:00
Download-Fritz
b5ccf1f93b
OcMachoLib: Support local relocations when getting a symbol by offset.
2019-03-26 15:34:33 +01:00
Download-Fritz
422dd9e146
OcAppleKernelLib: Make VTable iteration more readable.
2019-03-26 12:20:01 +01:00
Download-Fritz
181c393670
OcAppleKernelLib: Make prelinked VTable generation safer.
2019-03-26 12:19:43 +01:00
Download-Fritz
b142f829e2
OcAppleKernelLib: Fix VTable handling of inlined definitions.
2019-03-26 12:18:28 +01:00
Download-Fritz
ac1a32f41e
OcAppleKernelLib: Clarify SymbolNumber may not be 0 for sections.
...
Wrapping around to MAX_UINT32 will cause failure as NumSymbols is UINT32, however it's better to be clear.
2019-03-26 09:41:49 +01:00
Download-Fritz
8995e023aa
OcAppleKernelLib: Correctly locate section relocation address.
2019-03-26 09:39:15 +01:00
Download-Fritz
780777675e
OcAppleKernelLib: Include non-local VTable entries when counting.
2019-03-26 09:20:17 +01:00
Download-Fritz
a9377567c5
OcAppleKernelLib: Verify Symbol is non-NULL before adding to VTable.
2019-03-26 07:10:34 +01:00
Download-Fritz
9ed4fd0181
OcAppleKernelLib: Prevent VTable patch data from overflowing LinkBuffer.
2019-03-25 20:42:07 +01:00
Download-Fritz
e455442bd2
OcAppleKernelLib: Fix inaccurate VTable patching symbol range.
2019-03-25 20:17:00 +01:00
Download-Fritz
658fe6310a
OcAppleKernelLib: Fix inaccurate VTable patch data collection.
2019-03-25 20:10:43 +01:00
Download-Fritz
3907c0633c
OcAppleKernelLib: Switch VTable lookup to Worker model.
2019-03-25 19:11:23 +01:00
Download-Fritz
e0309eecd4
OcAppleKernelLib: Self-scanning VTable function.
2019-03-25 19:11:22 +01:00
Download-Fritz
d8d60dfd7c
OcAppleKernelLib: Self-scanning symbol lookup functions
2019-03-25 19:11:22 +01:00
Download-Fritz
9884b87516
OcAppleKernelLib: Build patched VTables during prelinking.
2019-03-25 19:11:22 +01:00
Download-Fritz
ad38c49b66
OcAppleKernelLib: Ignore missing VTable resolution symbols during iteration.
2019-03-25 19:11:22 +01:00
Download-Fritz
a455f1ebd3
OcAppleKernelLib: Store the Name pointer instead of StringIndex for prelinked symbols.
2019-03-25 19:11:22 +01:00
vit9696
0badcb3cb4
OcAppleKernelLib: Cleanup kext patching code
2019-03-25 20:09:55 +03:00
vit9696
4d9d4bbd1a
OcAppleKernelLib: Fix number to string conversion
2019-03-25 19:39:32 +03:00
Download-Fritz
53c59b3723
OcAppleKernelLib: Prepare new VTable patching concept.
...
No functional changes are intended.
2019-03-25 16:03:39 +01:00
Download-Fritz
ac47a671a0
OcAppleKernelLib: Rework IntoToHex implementation.
2019-03-25 14:44:10 +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
3a1cb95a6c
OcAppleKernelLib: Join the VTable patching functions.
2019-03-24 13:53:05 +01:00
Download-Fritz
14bbce27ca
OcAppleKernelLib: Skip previously patched VTables.
2019-03-24 13:47:23 +01:00
Download-Fritz
2d3d2997b5
OcAppleKernelLib: Fix SMCP storage.
2019-03-24 13:43:32 +01:00
Download-Fritz
896610d256
OcAppleKernelLib: Rework dependency symbol location.
2019-03-24 13:17:59 +01:00
Download-Fritz
f760c0ca74
OcMachoLib and OcAppleKernelLib: Silence warnings.
2019-03-24 13:17:29 +01:00
vit9696
4d94e639ca
OcAppleKernelLib: Check symbol range during vtable parsing
2019-03-24 15:11:24 +03:00
Download-Fritz
ac9f3284c4
OcAppleKernelLib: Security updates.
...
* Check Symbol Tabel retrieval success.
* Check whether the data to retrieve from __LINKEDIT fits the segment.
* Don't assume undefined symbol presence.
2019-03-24 11:13:47 +01:00
vit9696
2a72e67ac0
Move command stripping to Mach-O lib
2019-03-24 11:52:10 +03:00
vit9696
18e2801759
Fix misleading assertions
2019-03-24 02:55:31 +03: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
8454cdd574
OcAppleKernelLib: Retrieve Relocation target via GetPointerByAddress API.
2019-03-23 21:03:54 +01:00
Download-Fritz
6bc824ff38
OcAppleKernelLib: Zero __LINKEDIT tail and LinkBuffer.
2019-03-23 17:59:26 +01:00
Download-Fritz
660cc9dc7f
OcAppleKernelLib: Remove already performed alignment check.
2019-03-23 17:39:21 +01:00
Download-Fritz
a9c1f22db3
OcMachoLib: Optionally return MaxSize parameter for GetFileOffset.
...
OcAppleKernelLib: Adapt calls for security.
2019-03-23 17:36:40 +01:00
Download-Fritz
70278f9ef8
OcMachoLib and OcAppleKernelLib: Remove superfluous symbol range checks.
2019-03-23 17:35:27 +01:00