Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

elf(3E)

elf_version(3E)






       elf_error(3E)                                          elf_error(3E)


       NAME
             elf_error: elf_errmsg, elf_errno - error handling

       SYNOPSIS
             cc [flag . . . ] file . . . -lelf [library] . . .
             #include <libelf.h>
             const char *elf_errmsg(int err);
             int elf_errno(void);

       DESCRIPTION
             If an ELF library function fails, a program may call elf_errno
             to retrieve the library's internal error number.  As a side
             effect, this function resets the internal error number to
             zero, which indicates no error.

             elf_errmsg takes an error number, err, and returns a null-
             terminated error message (with no trailing new-line) that
             describes the problem.  A zero err retrieves a message for the
             most recent error.  If no error has occurred, the return value
             is a null pointer (not a pointer to the null string).  Using
             err of -1 also retrieves the most recent error, except it
             guarantees a non-null return value, even when no error has
             occurred.  If no message is available for the given number,
             elf_errmsg returns a pointer to an appropriate message.  This
             function does not have the side effect of clearing the
             internal error number.

       EXAMPLES
             The following fragment clears the internal error number and
             checks it later for errors.  Unless an error occurs after the
             first call to elf_errno, the next call will return zero.

                  (void)elf_errno();
                  while (more_to_do)
                  {
                          /* processing ... */
                          if ((err = elf_errno()) != 0)
                          {
                                  msg = elf_errmsg(err);
                                  /* print msg */
                          }
                  }

       REFERENCES
             elf(3E), elf_version(3E)



                           Copyright 1994 Novell, Inc.               Page 1








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026