summaryrefslogtreecommitdiffstats
path: root/cpukit/libdl/rtl-elf.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/libdl/rtl-elf.h')
-rw-r--r--cpukit/libdl/rtl-elf.h26
1 files changed, 19 insertions, 7 deletions
diff --git a/cpukit/libdl/rtl-elf.h b/cpukit/libdl/rtl-elf.h
index 7f6ea300a3..e3ac07f7ed 100644
--- a/cpukit/libdl/rtl-elf.h
+++ b/cpukit/libdl/rtl-elf.h
@@ -55,6 +55,18 @@ extern "C" {
#define RTEMS_RTL_ELF_STRING_MAX (256)
/**
+ * Architecture specific handler to translate unknown section flags to RTL
+ * section flags.
+ *
+ * @param obj The object file being relocated.
+ * @param shdr The ELF section header.
+ * @retval 0 Unknown or unsupported flags.
+ * @retval uint32_t RTL object file flags.
+ */
+uint32_t rtems_rtl_elf_section_flags (const rtems_rtl_obj_t* obj,
+ const Elf_Shdr* shdr);
+
+/**
* Architecture specific handler to check is a relocation record's type is
* required to resolve a symbol.
*
@@ -137,13 +149,6 @@ bool rtems_rtl_elf_find_symbol (rtems_rtl_obj_t* obj,
bool rtems_rtl_elf_file_check (rtems_rtl_obj_t* obj, int fd);
/**
- * The ELF file details handler.
- *
- * @param obj Load the details of the obj.
- */
-bool rtems_rtl_elf_load_details (rtems_rtl_obj_t* obj);
-
-/**
* The ELF format load handler.
*
* @param obj The object to load.
@@ -152,6 +157,13 @@ bool rtems_rtl_elf_load_details (rtems_rtl_obj_t* obj);
bool rtems_rtl_elf_file_load (rtems_rtl_obj_t* obj, int fd);
/**
+ * The ELF format unload handler.
+ *
+ * @param obj The object to unload.
+ */
+bool rtems_rtl_elf_file_unload (rtems_rtl_obj_t* obj);
+
+/**
* The ELF format signature handler.
*
* @return rtems_rtl_loader_format_t* The format's signature.