Provided by: manpages-de-dev_4.15.0-9_all bug

BEZEICHNUNG

       uselib - eine gemeinsam benutzte Bibliothek laden

ÜBERSICHT

       #include <unistd.h>

       int uselib(const char *bibliothek);

       Anmerkung:   In   den   Glibc-Headern  wird  keine  Deklaration  für  diesen  Systemaufruf
       bereitgestellt, siehe ANMERKUNGEN.

BESCHREIBUNG

       Der Systemaufruf uselib() dient dazu, eine gemeinsam benutzte Bibliothek für  die  Nutzung
       durch  den  aufrufenden Prozess zu laden. Ihr wird ein Pfadname übergeben. Die Ladeadresse
       befindet sich wird in der Bibliothek selbst. Die Bibliothek  kann  jedes  bekannte  binäre
       Format haben.

RÜCKGABEWERT

       Bei  Erfolg  wird  Null  zurückgegeben.  Bei  einem Fehler wird -1 zurückgegeben und errno
       gesetzt, um den Fehler anzuzeigen.

FEHLER

       Zusätzlich zu all den Fehlercodes, die  von  open(2)  und  mmap(2)  zurückgegeben  werden,
       können auch folgende auftreten:

       EACCES Die  durch  bibliothek  angegebene Bibliothek hat kein Lese- oder Ausführrecht oder
              der Aufrufende hat kein Suchrecht für eines der Verzeichnisse im Pfadpräfix. (Siehe
              auch path_resolution(7).)

       ENFILE Die systemweite Beschränkung für die Gesamtzahl offener Dateien wurde erreicht.

       ENOEXEC
              Die  Datei,  die durch bibliothek angegeben wird, ist keine ausführbare Datei eines
              bekannten Typs. Sie hat zum Beispiel nicht die richtigen magischen Zahlen.

KONFORM ZU

       uselib() ist Linux-spezifisch und sollte nicht in portierbaren Programmen benutzt werden.

ANMERKUNGEN

       Dieser veraltete Systemaufruf wird von Glibc nicht unterstützt. In den Glibc-Headern  wird
       keine  Deklaration  bereitgestellt, allerdings exportierten Glibc-Versionen vor 2.23 durch
       eine Laune der Geschichte  eine  ABI  für  diesen  Systemaufruf.  Um  diesen  Systemaufruf
       einzusetzen,  reichte  es  aus,  manuell  die  Schnittstelle in Ihrem Code zu deklarieren;
       alternativ könnten Sie den Systemaufruf mittels syscall(2) auslösen.

       In uralten Libc-Versionen (vor Glibbc  2.0)  wurde  uselib()  benutzt,  um  die  gemeinsam
       benutzten  Bibliotheken  zu  laden,  die  mit  Namen in einem Namensfeld in der Binärdatei
       gefunden wurden.

       Seit Linux 3.15 ist der Systemaufruf nur  verfügbar,  falls  der  Kernel  mit  der  Option
       CONFIG_USELIB konfiguriert wurde.

SIEHE AUCH

       ar(1), gcc(1), ld(1), ldd(1), mmap(2), open(2), dlopen(3), capabilities(7), ld.so(8)

KOLOPHON

       Diese  Seite  ist  Teil  der  Veröffentlichung  5.13  des  Projekts  Linux-man-pages. Eine
       Beschreibung des Projekts, Informationen, wie Fehler  gemeldet  werden  können  sowie  die
       aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die    deutsche    Übersetzung    dieser    Handbuchseite    wurde    von   Hanno   Wagner
       <wagner@bidnix.bid.fh-hannover.de>,  Chris  Leick  <c.leick@vollbio.de>  und  Dr.   Tobias
       Quathamer <toddy@debian.org> erstellt.

       Diese  Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die GNU General Public License
       Version 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder neuer bezüglich der  Copyright-
       Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an die Mailingliste der Übersetzer ⟨debian-l10n-german@lists.debian.org⟩.