elf_cntl —
control an elf file descriptor
ELF Access Library (libelf, -lelf)
#include
<libelf.h>
int
elf_cntl(
Elf
*elf,
Elf_Cmd
cmd);
Function
elf_cntl() controls the ELF library's
subsequent use of the file descriptor used to create ELF descriptor
elf.
Argument
cmd informs the library of the action
to be taken:
-
-
ELF_C_FDDONE
- This value instructs the ELF library not to perform any
further I/O on the file descriptor associated with argument
elf. For ELF descriptors opened with mode
ELF_C_WRITE or
ELF_C_RDWR subsequent
elf_update() operations on the descriptor
will fail.
-
-
ELF_C_FDREAD
- This value instructs the ELF library to read in all
necessary data associated with ELF descriptor
elf into memory so that the underlying
file descriptor can be safely closed with command
ELF_C_FDDONE
.
Argument
elf must be an ELF descriptor
associated with a file system object (e.g., an
ar(1) archive, an ELF file, or
other data file).
Due to use of
mmap(2)
internally, this function is a no-op for ELF objects opened in
ELF_C_READ
mode.
Function
elf_cntl() returns 0 on success, or -1 if
an error was detected.
-
-
- [
ELF_E_ARCHIVE
]
- Argument elf is a
descriptor for an archive member.
-
-
- [
ELF_E_ARGUMENT
]
- Argument elf was
NULL.
-
-
- [
ELF_E_ARGUMENT
]
- Argument cmd was not
recognized.
-
-
- [
ELF_E_MODE
]
- An
ELF_C_FDREAD
operation was requested on an ELF descriptor opened for writing.
elf(3),
elf_begin(3),
elf_end(3),
elf_next(3),
elf_update(3),
gelf(3)