summaryrefslogtreecommitdiff
path: root/src/format/elf/elf-int.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2015-03-28 01:00:33 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2015-03-28 01:00:33 (GMT)
commit057cee1c3c109639af8f30e39e00f4884a353f31 (patch)
tree563972accde653fd562305424cb1983617bc0b4c /src/format/elf/elf-int.c
parenta6bedf6104ccd7d8050e9d6a58f32c0827e3383c (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.c34
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;