unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (NetBSD-6.1.5)
Page:
Section:
Apropos / Subsearch:
optional field

ELF_CNTL(3)                Library Functions Manual                ELF_CNTL(3)

NAME
     elf_cntl -- control an elf file descriptor

LIBRARY
     ELF Access Library (libelf, -lelf)

SYNOPSIS
     #include <&lt;libelf.h>&gt;

     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 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)

NetBSD 6.1.5                    August 9, 2006                    NetBSD 6.1.5