elf_cntl(3elf) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

elf_cntl(3elf)

elf_cntl(3ELF)               ELF Library Functions              elf_cntl(3ELF)



NAME
       elf_cntl - control an elf file descriptor

SYNOPSIS
       cc [ flag ... ] file ... -lelf [ library ... ]
       #include <libelf.h>

       int elf_cntl(Elf *elf, Elf_Cmd cmd);

DESCRIPTION
       elf_cntl() instructs the library to modify its behavior with respect to
       an ELF descriptor, elf. As elf_begin(3ELF) describes, an ELF descriptor
       can have multiple activations, and multiple ELF descriptors may share a
       single file descriptor. Generally, elf_cntl()  commands  apply  to  all
       activations  of elf. Moreover, if the ELF descriptor is associated with
       an archive file, descriptors for members within the archive  will  also
       be  affected as described below. Unless stated otherwise, operations on
       archive members do not affect the descriptor  for  the  containing  ar‐
       chive.


       The  cmd argument tells what actions to take and may have the following
       values:

       ELF_C_FDDONE    This value tells  the  library  not  to  use  the  file
                       descriptor  associated  with  elf. A program should use
                       this command when it has requested all the  information
                       it  cares  to  use  and wishes to avoid the overhead of
                       reading the rest of the file. The memory for  all  com‐
                       pleted  operations remains valid, but later file opera‐
                       tions, such as the initial elf_getdata() for a section,
                       will fail if the data are not in memory already.


       ELF_C_FDREAD    This  command  is  similar  to  ELF_C_FDDONE, except it
                       forces the library to read the rest of the file. A pro‐
                       gram  should  use  this  command when it must close the
                       file descriptor but has  not  yet  read  everything  it
                       needs  from  the  file.  After elf_cntl() completes the
                       ELF_C_FDREAD  command,  future  operations,   such   as
                       elf_getdata(),  will use the memory version of the file
                       without needing to use the file descriptor.



       If elf_cntl() succeeds, it returns 0. Otherwise  elf  was  NULL  or  an
       error occurred, and the function returns −1.

ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       tab()  box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
       TRIBUTE VALUE _ Interface StabilityCommitted _ MT-LevelMT-Safe


SEE ALSO
       elf(3ELF),   elf_begin(3ELF),   elf_getdata(3ELF),   elf_rawfile(3ELF),
       libelf(3LIB), attributes(7)

NOTES
       If  the  program wishes to use the "raw" operations (see elf_rawdata(),
       which elf_getdata(3ELF) describes, and  elf_rawfile(3ELF))  after  dis‐
       abling  the  file descriptor with ELF_C_FDDONE or ELF_C_FDREAD, it must
       execute the raw operations explicitly beforehand.  Otherwise,  the  raw
       file operations will fail. Calling elf_rawfile() makes the entire image
       available, thus supporting subsequent elf_rawdata() calls.



Oracle Solaris 11.4               11 Jul 2001                   elf_cntl(3ELF)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3