Return the size of an object file type
cc [flag...]
file... -lelf
[library]...
#include <libelf.h>
size_t elf32_fsize(Elf_Type type , size_tcount, unsigned ver);
size_t elf64_fsize(Elf_Type type, size_tcount , unsigned ver);
elf32_fsize gives the size in bytes of the 32-bit file representation of count data objects with the given type. elf64_fsize gives the size in bytes of the 64-bit file representation of count data objects with the given type. The library uses version ver to calculate the size [see the elf_version subroutine.
Constant values are available for the sizes of fundamental types.
Elf_Type | File Size | Memory Size |
---|---|---|
ELF_T_ADDR | ELF32_FSZ_ADDR | sizeof(Elf32_Addr) |
ELF_T_BYTE | 1 | sizeof(unsigned char) |
ELF_T_HALF | ELF32_FSZ_HALF | sizeof(Elf32_Half) |
ELF_T_OFF | ELF32_FSZ_OFF | sizeof(Elf32_Off) |
ELF_T_SWORD | ELF32_FSZ_SWORD | sizeof(Elf32_Sword) |
ELF_T_WORD | ELF32_FSZ_WORD | sizeof(Elf32_Word) |
Elf_Type | File Size | Memory Size |
ELF_T_ADDR | ELF64_FSZ_ADDR | sizeof(Elf64_Addr) |
ELF_T_BYTE | 1 | sizeof(unsigned char) |
ELF_T_HALF | ELF64_FSZ_HALF | sizeof(Elf64_Half) |
ELF_T_OFF | ELF64_FSZ_OFF | sizeof(Elf64_Off) |
ELF_T_SWORD | ELF64_FSZ_SWORD | sizeof(Elf64_Sword) |
ELF_T_WORD | ELF64_FSZ_WORD | sizeof(Elf64_Word) |
ELF_T_SXWORD | ELF64_FSZ_SXWORD | sizeof(Elf64_Sxword) |
ELF_T_XWORD | ELF64_FSZ_XWORD | sizeof(Elf64_Xword) |
elf32_fsize and elf64_fsize return zero if the value of type or ver is unknown.
The elf_version subroutine.