From ecbe8c36a0ebce5d2fbd1debda75df61f23c8b15 Mon Sep 17 00:00:00 2001 From: TSRBerry <20988865+TSRBerry@users.noreply.github.com> Date: Sun, 24 Dec 2023 17:03:20 +0100 Subject: [PATCH] Make ElfCompatibilityProvider compatible with Ghidra 17 (#51) --- src/main/java/adubbz/nx/common/ElfCompatibilityProvider.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/adubbz/nx/common/ElfCompatibilityProvider.java b/src/main/java/adubbz/nx/common/ElfCompatibilityProvider.java index de8b6bd..de4f1b2 100644 --- a/src/main/java/adubbz/nx/common/ElfCompatibilityProvider.java +++ b/src/main/java/adubbz/nx/common/ElfCompatibilityProvider.java @@ -9,6 +9,7 @@ import adubbz.nx.util.FullMemoryByteProvider; import adubbz.nx.util.LegacyBinaryReader; import ghidra.app.util.bin.BinaryReader; +import ghidra.app.util.bin.ByteArrayProvider; import ghidra.app.util.bin.ByteProvider; import ghidra.app.util.bin.format.elf.*; import ghidra.app.util.bin.format.elf.extend.ElfExtensionFactory; @@ -352,7 +353,7 @@ public static class DummyElfHeader extends ElfHeader private HashMap dynamicTypeMap; public DummyElfHeader(boolean isAarch32) throws ElfException { - super(ByteProvider.EMPTY_BYTEPROVIDER, s -> {}); + super(new ByteArrayProvider(Arrays.copyOf(ElfConstants.MAGIC_BYTES, ElfConstants.EI_NIDENT + 18)), s -> {}); this.isAarch32 = isAarch32; dynamicTypeMap = new HashMap<>(); @@ -365,8 +366,6 @@ public DummyElfHeader(boolean isAarch32) throws ElfException { } } - @Override - protected void initElfHeader() { } @Override protected HashMap getDynamicTypeMap()