diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2015-03-28 01:00:33 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2015-03-28 01:00:33 (GMT) |
commit | 057cee1c3c109639af8f30e39e00f4884a353f31 (patch) | |
tree | 563972accde653fd562305424cb1983617bc0b4c /src/format/elf/elf-int.c | |
parent | a6bedf6104ccd7d8050e9d6a58f32c0827e3383c (diff) |
Provided readelf features as an external plugin.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@495 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/format/elf/elf-int.c')
-rw-r--r-- | src/format/elf/elf-int.c | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/src/format/elf/elf-int.c b/src/format/elf/elf-int.c index 4fd65df..7ca958b 100644 --- a/src/format/elf/elf-int.c +++ b/src/format/elf/elf-int.c @@ -145,7 +145,7 @@ bool read_elf_header(GElfFormat *format, elf_header *header, bool *is_32b, Sourc * * ******************************************************************************/ -bool read_elf_program_header(const GElfFormat *format, off_t *pos, elf_phdr *header) +bool read_elf_program_header(const GElfFormat *format, off_t pos, elf_phdr *header) { bool result; /* Bilan à retourner */ const bin_t *content; /* Contenu binaire à lire */ @@ -156,25 +156,25 @@ bool read_elf_program_header(const GElfFormat *format, off_t *pos, elf_phdr *hea if (format->is_32b) { - result = read_u32(&header->phdr32.p_type, content, pos, length, format->endian); - result &= read_u32(&header->phdr32.p_offset, content, pos, length, format->endian); - result &= read_u32(&header->phdr32.p_vaddr, content, pos, length, format->endian); - result &= read_u32(&header->phdr32.p_paddr, content, pos, length, format->endian); - result &= read_u32(&header->phdr32.p_filesz, content, pos, length, format->endian); - result &= read_u32(&header->phdr32.p_memsz, content, pos, length, format->endian); - result &= read_u32(&header->phdr32.p_flags, content, pos, length, format->endian); - result &= read_u32(&header->phdr32.p_align, content, pos, length, format->endian); + result = read_u32(&header->phdr32.p_type, content, &pos, length, format->endian); + result &= read_u32(&header->phdr32.p_offset, content, &pos, length, format->endian); + result &= read_u32(&header->phdr32.p_vaddr, content, &pos, length, format->endian); + result &= read_u32(&header->phdr32.p_paddr, content, &pos, length, format->endian); + result &= read_u32(&header->phdr32.p_filesz, content, &pos, length, format->endian); + result &= read_u32(&header->phdr32.p_memsz, content, &pos, length, format->endian); + result &= read_u32(&header->phdr32.p_flags, content, &pos, length, format->endian); + result &= read_u32(&header->phdr32.p_align, content, &pos, length, format->endian); } else { - result = read_u32(&header->phdr64.p_type, content, pos, length, format->endian); - result &= read_u32(&header->phdr64.p_flags, content, pos, length, format->endian); - result &= read_u64(&header->phdr64.p_offset, content, pos, length, format->endian); - result &= read_u64(&header->phdr64.p_vaddr, content, pos, length, format->endian); - result &= read_u64(&header->phdr64.p_paddr, content, pos, length, format->endian); - result &= read_u64(&header->phdr64.p_filesz, content, pos, length, format->endian); - result &= read_u64(&header->phdr64.p_memsz, content, pos, length, format->endian); - result &= read_u64(&header->phdr64.p_align, content, pos, length, format->endian); + result = read_u32(&header->phdr64.p_type, content, &pos, length, format->endian); + result &= read_u32(&header->phdr64.p_flags, content, &pos, length, format->endian); + result &= read_u64(&header->phdr64.p_offset, content, &pos, length, format->endian); + result &= read_u64(&header->phdr64.p_vaddr, content, &pos, length, format->endian); + result &= read_u64(&header->phdr64.p_paddr, content, &pos, length, format->endian); + result &= read_u64(&header->phdr64.p_filesz, content, &pos, length, format->endian); + result &= read_u64(&header->phdr64.p_memsz, content, &pos, length, format->endian); + result &= read_u64(&header->phdr64.p_align, content, &pos, length, format->endian); } return result; |