table of contents
- unstable 0.194-1
| ELF_RAWDATA(3) | Libelf Programmer's Manual | ELF_RAWDATA(3) |
NAME¶
elf_rawdata - Retrieve unprocessed section data from an ELF section.
SYNOPSIS¶
#include <libelf.h> Elf_Data *elf_rawdata(Elf_Scn *scn, Elf_Data *data);
DESCRIPTION¶
The elf_rawdata() function returns a pointer to an Elf_Data structure containing the unprocessed (raw) contents of the section identified by scn. This raw view reflects the exact on-disk binary layout of the ELF file with no modifications made for endianness or memory alignment. Use elf_getdata(3) to acquire a view of the data that has been translated to the in-memory format.
If data is NULL, the raw data of the section is returned. If data is not NULL and raw data has not been initialized, the call fails.
For compressed sections (i.e., with the SHF_COMPRESSED flag), the returned Elf_Data contains the compressed form, and its d_type is ELF_T_CHDR.
For sections of type SHT_NOBITS , the d_buf pointer is NULL.
The Elf_Data * returned by this function and it's d_buf are owned by libelf and should not be freed. They are only valid until elf_end(3) is called on the Elf descriptor associated with scn.
PARAMETERS¶
- scn
- A section descriptor returned from elf_getscn(3) or elf_nextscn(3). If NULL, then this function returns NULL.
- data
- Must be NULL on initial invocation. Any other use is not supported.
RETURN VALUE¶
Returns a pointer to an Elf_Data descriptor describing the raw contents of the section. On failure, NULL is returned and elf_errno is set.
SEE ALSO¶
elf_getdata(3), elf_getscn(3), elf_compress(3), libelf(3), elf(5)
ATTRIBUTES¶
| Interface | Attribute | Value |
| elf_rawdata () | Thread safety | MT-Safe |
REPORTING BUGS¶
Report bugs to <elfutils-devel@sourceware.org> or https://sourceware.org/bugzilla/.
| 2025-06-30 | Libelf |