Unix/Linux Go Back    


NetBSD 6.1.5 - man page for elf_memory (netbsd section 3)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


ELF_MEMORY(3)			   BSD Library Functions Manual 		    ELF_MEMORY(3)

NAME
     elf_memory -- process an ELF or ar(1) archive mapped into memory

LIBRARY
     library ``libelf''

SYNOPSIS
     #include <libelf.h>

     Elf *
     elf_memory(char *image, size_t size);

DESCRIPTION
     Function elf_memory() is used to process an ELF file or ar(1) archive whose image is present
     in memory.

     Argument image points to the start of the memory image of the file or archive.  Argument
     size contains the size in bytes of the memory image.

     The ELF descriptor is created for reading (i.e., analogous to the use of elf_begin(3) with a
     command argument value of ELF_C_READ).

RETURN VALUES
     Function elf_memory() returns a pointer to a new ELF descriptor if successful, or NULL if an
     error occurred.

     The return value may be queried for the file type using elf_kind(3).

EXAMPLES
     To read parse an elf file, use:

	   int fd;
	   void *p;
	   struct stat sb;
	   Elf *e;
	   ...
	   if ((fd = open("./elf-file", O_RDONLY)) < 0 ||
	       fstat(fd, &sb) < 0 ||
	       (p = mmap(NULL, sb.st_size, PROT_READ, MAP_PRIVATE, fd, (off_t) 0)) ==
	       MAP_FAILED) {
		   ... handle system error ...
	   }

	   if ((e = elf_memory(p, sb.st_size)) == NULL) {
		   ... handle elf(3) error ...
	   }
	   ... use ELF descriptor "e" here ...

ERRORS
     Function elf_memory() can fail with the following errors:

     [ELF_E_ARGUMENT]  A NULL value was used for argument image or the value of argument sz was
		       zero.

     [ELF_E_HEADER]    The header of the ELF object contained an unsupported value in its
		       e_ident[EI_CLASS] field.

     [ELF_E_HEADER]    The header of the ELF object contained an unsupported value in its
		       e_ident[EI_DATA] field.

     [ELF_E_RESOURCE]  An out of memory condition was detected.

     [ELF_E_SEQUENCE]  Function elf_memory() was called before a working version was set using
		       elf_version(3).

     [ELF_E_VERSION]   The argument image corresponds to an ELF file with an unsupported version.

SEE ALSO
     elf(3), elf_begin(3), elf_end(3), elf_errno(3), elf_kind(3), gelf(3)

BSD					  June 28, 2006 				      BSD
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 06:41 PM.