Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
ELF_ERRMSG(3)	       FreeBSD Library Functions Manual		 ELF_ERRMSG(3)

NAME
     elf_errmsg, elf_errno -- ELF library error	message	handling

LIBRARY
     ELF Parsing Library (libelf, -lelf)

SYNOPSIS
     #include <libelf.h>

     int
     elf_errno(void);

     const char	*
     elf_errmsg(int error);

DESCRIPTION
     When an error occurs during an ELF	library	API call, the library encodes
     the error using an	error number and stores	the error number internally
     for retrieval by the application at a later point of time.	 Error numbers
     may contain an OS supplied	error code in addition to an ELF API specific
     error code.  An error number value	of zero	indicates no error.

     Function elf_errno() is used to retrieve the last error recorded by the
     ELF library.  Invoking this function has the side-effect of resetting the
     ELF library's recorded error number to zero.

     The function elf_errmsg() returns a null-terminated string	with a human
     readable description of the error specified in argument error.  A zero
     value for argument	error retrieves	the most recent	error encountered by
     the ELF library.  An argument value of -1 behaves identically, except
     that it guarantees	a non-NULL return from elf_errmsg().

RETURN VALUES
     Function elf_errno() returns a non-zero value encoding the	last error
     encountered by the	ELF library, or	zero if	no error was encountered.

     Function elf_errmsg() returns a pointer to	library	local storage for non-
     zero values of argument error.  With a zero argument, the function	will
     return a NULL pointer if no error had been	encountered by the library, or
     will return a pointer to library local storage containing an appropriate
     message otherwise.

EXAMPLES
     Clearing the ELF library's	recorded error number can be accomplished by
     invoking elf_errno() and discarding its return value.

	   /* clear error */
	   (void) elf_errno();

     Retrieving	a human-readable description of	the current error number can
     be	done with the following	snippet:

	   int err;
	   const char *errmsg;
	   ...
	   err = elf_errno();
	   if (err != 0)
		   errmsg = elf_errmsg(err);

SEE ALSO
     elf(3), gelf(3)

BUGS
     Function elf_errmsg() is not localized.

FreeBSD	9.3			 June 11, 2006			   FreeBSD 9.3

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | EXAMPLES | SEE ALSO | BUGS

Want to link to this manual page? Use this URL:
<http://www.freebsd.org/cgi/man.cgi?query=elf_errno&sektion=3&manpath=FreeBSD+7.0-RELEASE>

home | help