summaryrefslogtreecommitdiff
path: root/src/format/elf/e_elf.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/format/elf/e_elf.c')
-rw-r--r--src/format/elf/e_elf.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/format/elf/e_elf.c b/src/format/elf/e_elf.c
index c2e49b1..a9eacea 100644
--- a/src/format/elf/e_elf.c
+++ b/src/format/elf/e_elf.c
@@ -71,7 +71,7 @@ elf_format *load_elf(const uint8_t *content, off_t length)
EXE_FORMAT(result)->length = length;
EXE_FORMAT(result)->get_def_parts = (get_def_parts_fc)get_elf_default_code_parts;
- EXE_FORMAT(result)->find_section = (find_section_fc)find_elf_section;
+ EXE_FORMAT(result)->find_section = (find_section_fc)find_elf_section_content_by_name;
EXE_FORMAT(result)->get_symbols = (get_symbols_fc)get_elf_symbols;
EXE_FORMAT(result)->resolve_symbol = (resolve_symbol_fc)resolve_elf_symbol;
@@ -142,7 +142,7 @@ bin_part **get_elf_default_code_parts(const elf_format *format, size_t *count)
if (format->sec_size > 0)
{
- if (find_elf_section(format, ".plt", &offset, &size, &voffset))
+ if (find_elf_section_content_by_name(format, ".plt", &offset, &size, &voffset))
{
part = create_bin_part();
@@ -154,7 +154,7 @@ bin_part **get_elf_default_code_parts(const elf_format *format, size_t *count)
}
- if (find_elf_section(format, ".init", &offset, &size, &voffset))
+ if (find_elf_section_content_by_name(format, ".init", &offset, &size, &voffset))
{
part = create_bin_part();
@@ -166,7 +166,7 @@ bin_part **get_elf_default_code_parts(const elf_format *format, size_t *count)
}
- if (find_elf_section(format, ".text", &offset, &size, &voffset))
+ if (find_elf_section_content_by_name(format, ".text", &offset, &size, &voffset))
{
part = create_bin_part();
@@ -178,7 +178,7 @@ bin_part **get_elf_default_code_parts(const elf_format *format, size_t *count)
}
- if (find_elf_section(format, ".fini", &offset, &size, &voffset))
+ if (find_elf_section_content_by_name(format, ".fini", &offset, &size, &voffset))
{
part = create_bin_part();
@@ -202,15 +202,15 @@ bin_part **get_elf_default_code_parts(const elf_format *format, size_t *count)
memcpy(&shdr, &EXE_FORMAT(format)->content[offset], format->header.e_shentsize);
- if (ELF_SHDR(format, shdr, sh_flags) & SHF_EXECINSTR)
+ if (ELF_SHDR(format, &shdr, sh_flags) & SHF_EXECINSTR)
{
part = create_bin_part();
/* TODO : nom */
- set_bin_part_values(part, ELF_SHDR(format, shdr, sh_offset),
- ELF_SHDR(format, shdr, sh_size),
- ELF_SHDR(format, shdr, sh_addr));
+ set_bin_part_values(part, ELF_SHDR(format, &shdr, sh_offset),
+ ELF_SHDR(format, &shdr, sh_size),
+ ELF_SHDR(format, &shdr, sh_addr));
result = (bin_part **)realloc(result, ++(*count) * sizeof(bin_part *));
result[*count - 1] = part;