aboutsummaryrefslogtreecommitdiff
path: root/backends/plugins/elf/elf-loader.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'backends/plugins/elf/elf-loader.cpp')
-rw-r--r--backends/plugins/elf/elf-loader.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/backends/plugins/elf/elf-loader.cpp b/backends/plugins/elf/elf-loader.cpp
index 0503f81c42..df2bc98fb7 100644
--- a/backends/plugins/elf/elf-loader.cpp
+++ b/backends/plugins/elf/elf-loader.cpp
@@ -156,7 +156,7 @@ bool DLObject::loadSegment(Elf32_Phdr *phdr) {
uint32 extra = phdr->p_vaddr % phdr->p_align; // Get extra length TODO: check logic here
debug(2, "elfloader: Extra mem is %x", extra);
- _segment = (byte *) allocSegment(phdr->p_align, phdr->p_memsz + extra);
+ _segment = (byte *)allocSegment(phdr->p_align, phdr->p_memsz + extra);
if (!_segment) {
warning("elfloader: Out of memory.");
@@ -171,7 +171,8 @@ bool DLObject::loadSegment(Elf32_Phdr *phdr) {
// Set bss segment to 0 if necessary (assumes bss is at the end)
if (phdr->p_memsz > phdr->p_filesz) {
- debug(2, "elfloader: Setting %p to %p to 0 for bss", _segment + phdr->p_filesz, _segment + phdr->p_memsz);
+ debug(2, "elfloader: Setting %p to %p to 0 for bss",
+ _segment + phdr->p_filesz, _segment + phdr->p_memsz);
memset(_segment + phdr->p_filesz, 0, phdr->p_memsz - phdr->p_filesz);
}
@@ -195,7 +196,7 @@ Elf32_Shdr * DLObject::loadSectionHeaders(Elf32_Ehdr *ehdr) {
Elf32_Shdr *shdr = 0;
// Allocate memory for section headers
- if (!(shdr = (Elf32_Shdr *) malloc(ehdr->e_shnum * sizeof(*shdr)))) {
+ if (!(shdr = (Elf32_Shdr *)malloc(ehdr->e_shnum * sizeof(*shdr)))) {
warning("elfloader: Out of memory.");
return 0;
}
@@ -231,10 +232,11 @@ int DLObject::loadSymbolTable(Elf32_Ehdr *ehdr, Elf32_Shdr *shdr) {
return -1;
}
- debug(2, "elfloader: Symbol section at section %d, size %x", _symtab_sect, shdr[_symtab_sect].sh_size);
+ debug(2, "elfloader: Symbol section at section %d, size %x",
+ _symtab_sect, shdr[_symtab_sect].sh_size);
// Allocate memory for symbol table
- if (!(_symtab = (Elf32_Sym *) malloc(shdr[_symtab_sect].sh_size))) {
+ if (!(_symtab = (Elf32_Sym *)malloc(shdr[_symtab_sect].sh_size))) {
warning("elfloader: Out of memory.");
return -1;
}
@@ -260,7 +262,7 @@ bool DLObject::loadStringTable(Elf32_Shdr *shdr) {
uint32 string_sect = shdr[_symtab_sect].sh_link;
// Allocate memory for string table
- if (!(_strtab = (char *) malloc(shdr[string_sect].sh_size))) {
+ if (!(_strtab = (char *)malloc(shdr[string_sect].sh_size))) {
warning("elfloader: Out of memory.");
return false;
}
@@ -284,7 +286,9 @@ void DLObject::relocateSymbols(ptrdiff_t offset) {
// Make sure we don't relocate special valued symbols
if (s->st_shndx < SHN_LOPROC) {
s->st_value += offset;
- if (s->st_value < Elf32_Addr(_segment) || s->st_value > Elf32_Addr(_segment) + _segmentSize)
+
+ if (s->st_value < Elf32_Addr(_segment) ||
+ s->st_value > Elf32_Addr(_segment) + _segmentSize)
warning("elfloader: Symbol out of bounds! st_value = %x", s->st_value);
}
}
@@ -407,7 +411,7 @@ void *DLObject::symbol(const char *name) {
!strcmp(name, _strtab + s->st_name)) {
// We found the symbol
debug(2, "elfloader: => 0x%08x", s->st_value);
- return (void*) s->st_value;
+ return (void*)s->st_value;
}
// We didn't find the symbol