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 Library)                  elf_error(3E)


   NAME
         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.

   EXAMPLE
         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 */
                      }
              }

   SEE ALSO
         elf(3E), elf_version(3E).








   7/91                                                                 Page 1





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