Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ elf_version(3E) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

elf(3E)

elf_version(3E)                                             elf_version(3E)

NAME
     elfversion - Versionen abgleichen

SYNTAX
     cc [option ...] datei ... -lelf [bibliothek ...]

     #include <libelf.h>

     unsigned elfversion(unsigned ver);

BESCHREIBUNG
     Wie unter elf(3E) erläutert, besitzen das Programm, die Bibliothek und
     eine Objektdatei verschiedene Ansichten über die "neueste" ELF-
     Version. elfversion() erlaubt einem Programm die Feststellung der
     internen Version der ELF-Bibliothek. Ferner wird dem Programm ermög-
     licht, die verwendeten Speichertypen anzugeben; dies geschieht durch
     die Übergabe der Arbeitsversion ver an die Bibliothek. Jedes Programm,
     das die ELF-Bibliothek benutzt, muß die Versionen, wie beschrieben,
     abgleichen.

     Die Include-Datei libelf.h stellt dem Programm die Version über das
     Makro EVCURRENT zur Verfügung. Wenn die bibliotheksinterne Version
     (die höchste, der Bibliothek bekannte Version) kleiner als die dem
     Progamm bekannte Version ist, könnten der Bibliothek semantische
     Informationen fehlen, die vom Programm vorausgesetzt werden. Daher
     akzeptiert elfversion() keine Arbeitsversion, die der Bibliothek
     unbekannt ist.

     Die Übergabe von ver gleich EVNONE veranlaßt elfversion() dazu, die
     bibliotheksinterne Version zurückzuliefern, ohne daß die Arbeitsver-
     sion geändert wird. Wenn die Version ver der Bibliothek bekannt ist,
     liefert elfversion() die vorherige Arbeitsversionsnummer zurück.
     Ansonsten bleibt die Arbeitsversion unverändert und elfversion() lie-
     fert EVNONE.

BEISPIELE
     Der folgende Programmauszug aus einem Anwendungsprogramm schützt
     davor, eine ältere Bibliothek zu verwenden.

        if (elfversion(EVCURRENT) == EVNONE)
        {
              /* Bibliothek veraltet */
              /* Fehlerbehandlung */
        }

HINWEISE
     Die Arbeitsversion sollte für alle Operationen mit einem bestimmten
     ELF-Deskriptor identisch sein. Das Ändern der Version zwischen den
     Operationen eines Deskriptors führt unter Umständen nicht zu dem
     erwarteten Ergebnis.





Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

elf_version(3E)                                             elf_version(3E)

SIEHE AUCH
     elf(3E), elfbegin(3E), elfxlate(3E).




















































Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

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