summaryrefslogtreecommitdiffstats
path: root/Source/cmELF.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/cmELF.h')
-rw-r--r--Source/cmELF.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/Source/cmELF.h b/Source/cmELF.h
index 9e4575b..aeb4096 100644
--- a/Source/cmELF.h
+++ b/Source/cmELF.h
@@ -68,6 +68,9 @@ public:
// The size of the string table entry. This includes the space
// allocated for one or more null terminators.
unsigned long Size;
+
+ // The index of the section entry referencing the string.
+ int IndexInSection;
};
/** Get the type of the file opened. */
@@ -76,6 +79,17 @@ public:
/** Get the number of ELF sections present. */
unsigned int GetNumberOfSections() const;
+ /** Get the number of DYNAMIC section entries before the first
+ DT_NULL. Returns zero on error. */
+ unsigned int GetDynamicEntryCount() const;
+
+ /** Get the position of a DYNAMIC section header entry. Returns
+ zero on error. */
+ unsigned long GetDynamicEntryPosition(int index) const;
+
+ /** Read bytes from the file. */
+ bool ReadBytes(unsigned long pos, unsigned long size, char* buf) const;
+
/** Get the SONAME field if any. */
bool GetSOName(std::string& soname);
StringEntry const* GetSOName();