elf_rand man page on FreeBSD

Man page or keyword search:  
man Server   9747 pages
apropos Keyword Search (all sections)
Output format
FreeBSD logo
[printable version]

ELF_RAND(3)		 BSD Library Functions Manual		   ELF_RAND(3)

NAME
     elf_rand — provide sequential access to the next archive member

LIBRARY
     library “libelf”

SYNOPSIS
     #include <libelf.h>

     off_t
     elf_rand(Elf *archive, off_t offset);

DESCRIPTION
     The elf_rand() function causes the ELF descriptor archive to be adjusted
     so that the next call to elf_begin(3) will provide access to the archive
     member at byte offset offset in the archive.  Argument offset is the byte
     offset from the start of the archive to the beginning of the archive
     header for the desired member.

     Archive member offsets may be retrieved using the elf_getarsym(3) func‐
     tion.

RETURN VALUES
     Function elf_rand() returns offset if successful or zero in case of an
     error.

EXAMPLES
     To process all the members of an archive use:

	   off_t off;
	   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 ...
		   elf_end(e);

		   off = ...new value...;
		   if (elf_rand(archive, off) != off) {
			   ... process error ...
		   }
	   }
	   elf_end(archive);

     To rewind an archive, use:

	   Elf *archive;
	   ...
	   if (elf_rand(archive, SARMAG) != SARMAG) {
		   ... error ...
	   }

ERRORS
     Function elf_rand() may fail with the following errors:

     [ELF_E_ARGUMENT]  Argument archive was null.

     [ELF_E_ARGUMENT]  Argument archive was not a descriptor for an ar(1) ar‐
		       chive.

     [ELF_E_ARCHIVE]   Argument offset did not correspond to the start of an
		       archive member header.

SEE ALSO
     ar(1), elf(3), elf_begin(3), elf_end(3), elf_getarsym(3), elf_next(3),
     gelf(3)

BSD				 June 17, 2006				   BSD
[top]

List of man pages available for FreeBSD

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net