NAME
elf_cntl —
control an elf file
descriptor
LIBRARY
ELF Access Library (libelf, -lelf)
SYNOPSIS
#include <libelf.h>
int
elf_cntl(
Elf
*elf,
Elf_Cmd cmd);
DESCRIPTION
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).
IMPLEMENTATION NOTES
Due to use of
mmap(2) internally,
this function is a no-op for ELF objects opened in
ELF_C_READ
mode.
RETURN VALUES
Function
elf_cntl() returns 0 on success, or -1 if an error
was detected.
ERRORS
-
-
- [
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.
SEE ALSO
elf(3),
elf_begin(3),
elf_end(3),
elf_next(3),
elf_update(3),
gelf(3)