mirror of
https://github.com/NationalSecurityAgency/ghidra
synced 2024-09-19 18:21:26 +00:00
Fix ARM64E_KERNEL chained pointer handling in Mach-O binaries.
This commit is contained in:
parent
e15e12b248
commit
cf918dd8e4
|
@ -186,6 +186,7 @@ public class DyldChainedPtr {
|
|||
|
||||
switch (ptrFormat) {
|
||||
case DYLD_CHAINED_PTR_ARM64E:
|
||||
case DYLD_CHAINED_PTR_ARM64E_KERNEL:
|
||||
case DYLD_CHAINED_PTR_ARM64E_USERLAND:
|
||||
case DYLD_CHAINED_PTR_ARM64E_USERLAND24:
|
||||
return ((chainValue >>> 62) & 1) != 0;
|
||||
|
@ -199,7 +200,6 @@ public class DyldChainedPtr {
|
|||
|
||||
// Never bound
|
||||
case DYLD_CHAINED_PTR_ARM64E_FIRMWARE:
|
||||
case DYLD_CHAINED_PTR_ARM64E_KERNEL:
|
||||
case DYLD_CHAINED_PTR_X86_64_KERNEL_CACHE:
|
||||
case DYLD_CHAINED_PTR_64_KERNEL_CACHE:
|
||||
case DYLD_CHAINED_PTR_32_CACHE:
|
||||
|
@ -356,6 +356,7 @@ public class DyldChainedPtr {
|
|||
|
||||
switch (ptrFormat) {
|
||||
case DYLD_CHAINED_PTR_ARM64E:
|
||||
case DYLD_CHAINED_PTR_ARM64E_KERNEL:
|
||||
case DYLD_CHAINED_PTR_ARM64E_USERLAND:
|
||||
ordinal = chainValue & 0xFFFF;
|
||||
break;
|
||||
|
@ -372,7 +373,6 @@ public class DyldChainedPtr {
|
|||
|
||||
// Never Ordinal
|
||||
case DYLD_CHAINED_PTR_ARM64E_FIRMWARE:
|
||||
case DYLD_CHAINED_PTR_ARM64E_KERNEL:
|
||||
case DYLD_CHAINED_PTR_X86_64_KERNEL_CACHE:
|
||||
case DYLD_CHAINED_PTR_64_KERNEL_CACHE:
|
||||
case DYLD_CHAINED_PTR_32_CACHE:
|
||||
|
|
Loading…
Reference in a new issue