From c12bc7b91c1927a7822067ead016be9b06daabb1 Mon Sep 17 00:00:00 2001 From: ghidra1 Date: Mon, 3 Jun 2019 14:07:07 -0400 Subject: [PATCH] GT-2741 added ELF program properties to remember original image base and prelinked condition --- .../ghidra/app/util/opinion/ElfLoader.java | 10 +- .../app/util/opinion/ElfProgramBuilder.java | 148 +++++++----------- 2 files changed, 66 insertions(+), 92 deletions(-) diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/ElfLoader.java b/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/ElfLoader.java index 724f0f4b62..4b0f60c406 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/ElfLoader.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/ElfLoader.java @@ -46,6 +46,10 @@ public class ElfLoader extends AbstractLibrarySupportLoader { public final static String ELF_ENTRY_FUNCTION_NAME = "entry"; + public final static String ELF_FILE_TYPE_PROPERTY = "ELF File Type"; + public final static String ELF_ORIGINAL_IMAGE_BASE_PROPERTY = "ELF Original Image Base"; + public final static String ELF_PRELINKED_PROPERTY = "ELF Prelinked"; + public final static String ELF_REQUIRED_LIBRARY_PROPERTY_PREFIX = "ELF Required Library ["; // followed by "#]" public final static String ELF_SOURCE_FILE_PROPERTY_PREFIX = "ELF Source File ["; // followed by "#]" @@ -83,8 +87,7 @@ public class ElfLoader extends AbstractLibrarySupportLoader { } } else if (baseOffsetStrLen < minNibbles) { - baseOffsetStr = - StringUtilities.pad(baseOffsetStr, '0', minNibbles - baseOffsetStrLen); + baseOffsetStr = StringUtilities.pad(baseOffsetStr, '0', minNibbles - baseOffsetStrLen); } return baseOffsetStr; } @@ -143,8 +146,7 @@ public class ElfLoader extends AbstractLibrarySupportLoader { @Override public void load(ByteProvider provider, LoadSpec loadSpec, List