Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ elf_version(3E) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

elf(3E)

elf_begin(3E)

elf_xlate(3E)

elf_version(3E)






       elf_version(3E)                                      elf_version(3E)


       NAME
             elf_version - coordinate ELF library and application versions

       SYNOPSIS
             cc [flag . . . ] file . . . -lelf [library] . . .
             #include <libelf.h>
             unsigned elf_version(unsigned ver);

       DESCRIPTION
             As elf(3E) explains, the program, the library, and an object
             file have independent notions of the ``latest'' ELF version.
             elf_version lets a program determine the ELF library's
             internal version.  It further lets the program specify what
             memory types it uses by giving its own working version, ver,
             to the library.  Every program that uses the ELF library must
             coordinate versions as described below.

             The header file libelf.h supplies the version to the program
             with the macro EV_CURRENT.  If the library's internal version
             (the highest version known to the library) is lower than that
             known by the program itself, the library may lack semantic
             knowledge assumed by the program.  Accordingly, elf_version
             will not accept a working version unknown to the library.

             Passing ver equal to EV_NONE causes elf_version to return the
             library's internal version, without altering the working
             version.  If ver is a version known to the library,
             elf_version returns the previous (or initial) working version
             number.  Otherwise, the working version remains unchanged and
             elf_version returns EV_NONE.

       EXAMPLES
             The following excerpt from an application program protects
             itself from using an older library.

                  if (elf_version(EV_CURRENT) == EV_NONE)
                  {
                          /* library out of date */
                          /* recover from error */
                  }

       REFERENCES
             elf(3E), elf_begin(3E), elf_xlate(3E)





                           Copyright 1994 Novell, Inc.               Page 1













      elf_version(3E)                                      elf_version(3E)


      NOTICES
            The working version should be the same for all operations on a
            particular elf descriptor.  Changing the version between
            operations on a descriptor will probably not give the expected
            results.











































                          Copyright 1994 Novell, Inc.               Page 2








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