ELF_NEXT(3) BSD Library Functions Manual ELF_NEXT(3)NAMEelf_next — provide sequential access to the next archive member
LIBRARY
library “libelf”
SYNOPSIS
#include <libelf.h>
Elf_Cmd
elf_next(Elf *elf);
DESCRIPTION
The elf_next() function causes the ELF archive descriptor corresponding
to argument elf to be adjusted to provide access to the next member in
the archive on a subsequent call to elf_begin().
The return value of elf_next() is suitable for use in a loop invoking
elf_begin().
RETURN VALUES
If successful, function elf_next() returns the value ELF_C_READ. Other‐
wise, if argument elf was not associated with an archive, or if it was
NULL, or if any other error occurred, the value ELF_C_NULL is returned.
EXAMPLES
To process all the members of an archive use:
Elf_Cmd cmd;
Elf *archive, *e;
...
cmd = ELF_C_READ;
archive = elf_begin(fd, cmd, NULL);
while ((e = elf_begin(fd, cmd, archive)) != (Elf *) 0)
{
... process `e' here ...
cmd = elf_next(e);
elf_end(e);
}
elf_end(archive);
ERRORS
Function elf_next() may fail with the following error:
[ELF_E_ARGUMENT] Argument elf was not associated with a containing ar(1)
archive.
SEE ALSOelf(3), elf_begin(3), elf_end(3), elf_rand(3)BSD June 17, 2006 BSD