#include <elf.h>#include <task.h>#include <secure_api.h>#include <sw_debug.h>#include <otz_id.h>#include <fat32.h>#include <page_table.h>#include <dispatcher_task.h>#include <sw_string_functions.h>#include <sw_mem_functions.h>#include <mem_mng.h>#include <sw_list.h>#include <cpu_data.h>#include <sw_types.h>#include <elf_loader_app.h>#include <elf_loader.h>#include <sw_board.h>Go to the source code of this file.
Macros | |
| #define | __KSYMTAB_ADDR ((va_t *)&_SW_KSYMTAB) |
Functions | |
| int | elf_loader_cleanup (void) |
| clean up function to remove the mappings | |
| int | get_number_of_loadable_segments (int fp, Elf32_Ehdr *elf_header, Elf32_Phdr **phdr_tab) |
| Gets the number of loadable segments, ie segments with type PT_LOAD. | |
| int | elf_load (struct sa_config_t *conf) |
| the main elf loader function | |
| #define __KSYMTAB_ADDR ((va_t *)&_SW_KSYMTAB) |
Definition at line 48 of file elf_loader.c.
| int elf_load | ( | struct sa_config_t * | conf | ) |
the main elf loader function
The main loader function which will be called by the __elf_load() syscall, has functionality for handling both relocatable files and executable files, although executable file support is not required as of now, so control doesn't go to the executable file part of the function.
| conf | : configuration parameter for the task |
Definition at line 678 of file elf_loader.c.
| int elf_loader_cleanup | ( | void | ) |
clean up function to remove the mappings
cleans up the reserved secure memory region
| psa_config |
Definition at line 84 of file elf_loader.c.
| int get_number_of_loadable_segments | ( | int | fp, |
| Elf32_Ehdr * | elf_header, | ||
| Elf32_Phdr ** | phdr_tab | ||
| ) |
Gets the number of loadable segments, ie segments with type PT_LOAD.
| fp | |
| elf_header | |
| phdr_tab | : pointer to the program header table |
Definition at line 629 of file elf_loader.c.
1.8.2