*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> libelf/elf_getscn (3)              
Title
Content
Arch
Section
 

Contents


ELF_GETSCN(3E)							ELF_GETSCN(3E)


NAME    [Toc]    [Back]

     elf_getscn, elf_ndxscn, elf_newscn, elf_nextscn - get section information

SYNOPSIS    [Toc]    [Back]

     cc	[flag ...] file	...  -lelf [library ...]

     #include <libelf.h>

     Elf_Scn *elf_getscn(Elf *elf, size_t index);
     size_t elf_ndxscn(Elf_Scn *scn);

     Elf_Scn *elf_newscn(Elf *elf);
     Elf_Scn *elf_nextscn(Elf *elf, Elf_Scn *scn);

DESCRIPTION    [Toc]    [Back]

     These functions provide indexed and sequential access to the sections
     associated	with the ELF descriptor	elf.  If the program is	building a new
     file, it is responsible for creating the file's ELF header	before
     creating sections;	see elf_getehdr(3E).

     elf_getscn	returns	a section descriptor, given an index into the file's
     section header table.  Note the first ``real'' section has	index 1.
     Although a	program	can get	a section descriptor for the section whose
     index is 0	(SHN_UNDEF, the	undefined section), the	section	has no data
     and the section header is ``empty'' (though present).  If the specified
     section does not exist, an	error occurs, or elf is	null, elf_getscn
     returns a null pointer.

     elf_newscn	creates	a new section and appends it to	the list for elf.
     Because the SHN_UNDEF section is required and not ``interesting'' to
     applications, the library creates it automatically.  Thus the first call
     to	elf_newscn for an ELF descriptor with no existing sections returns a
     descriptor	for section 1.	If an error occurs or elf is null, elf_newscn
     returns a null pointer.

     After creating a new section descriptor, the program can use elf_getshdr
     to	retrieve the newly created, ``clean'' section header.  The new section
     descriptor	will have no associated	data [see elf_getdata(3E)].  When
     creating a	new section in this way, the library updates the e_shnum
     member of the ELF header and sets the ELF_F_DIRTY bit for the section
     [see elf_flag(3E)].  If the program is building a new file, it is
     responsible for creating the file's ELF header [see elf_getehdr(3E)]
     before creating new sections.

     elf_nextscn takes an existing section descriptor, scn, and	returns	a
     section descriptor	for the	next higher section.  One may use a null scn
     to	obtain a section descriptor for	the section whose index	is 1 (skipping
     the section whose index is	SHN_UNDEF).  If	no further sections are
     present or	an error occurs, elf_nextscn returns a null pointer.






									Page 1






ELF_GETSCN(3E)							ELF_GETSCN(3E)



     elf_ndxscn	takes an existing section descriptor, scn, and returns its
     section table index.  If scn is null or an	error occurs, elf_ndxscn
     returns SHN_UNDEF.

EXAMPLE    [Toc]    [Back]

     An	example	of sequential access appears below.  Each pass through the
     loop processes the	next section in	the file; the loop terminates when all
     sections have been	processed.

	  scn =	0;
	  while	((scn =	elf_nextscn(elf, scn)) != 0)
	  {
		  /* process section */
	  }

SEE ALSO    [Toc]    [Back]

      
      
     elf(3E), elf_begin(3E), elf_flag(3E), elf_getdata(3E), elf_getehdr(3E),
     elf_getshdr(3E).


									PPPPaaaaggggeeee 2222
[ Back ]
 Similar pages
Name OS Title
intro HP-UX introduction to HP-UX general information section
st_cm_append Tru64 access and modify comment section information in an object file
st_cm_next Tru64 access and modify comment section information in an object file
st_cm_print Tru64 access and modify comment section information in an object file
st_cm_print_one Tru64 access and modify comment section information in an object file
st_cm_setup Tru64 access and modify comment section information in an object file
st_cm_set_flags Tru64 access and modify comment section information in an object file
st_cm_layout Tru64 access and modify comment section information in an object file
st_obj_cm_setup Tru64 access and modify comment section information in an object file
st_cm_tag Tru64 access and modify comment section information in an object file
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service