Provided by: manpages-de-dev_2.5-1_all bug

BEZEICHNUNG

       ioperm - setzt Port-Zugriffsrechte für Eingabe/Ausgabe

ÜBERSICHT

       #include <stdio.h>  /* für Glibc */

       int ioperm(unsigned long from, unsigned long num, int turn_on);

BESCHREIBUNG

       ioperm()  setzt  die  Bits für die Port-Zugriffsrechte des aufrufenden Prozesses ab der Port-Adresse from
       für num Byte auf den Wert turn_on. Wenn der Wert von turn_on nicht Null ist, muss der aufrufende  Prozess
       privilegiert sein (CAP_SYS_RAWIO).

       Mit  Linux-Versionen  älter  als  2.6.8  können  nur die ersten 0x3ff E/A-Ports auf diese Weise angegeben
       werden. Für weitere Ports muss der Systemaufruf iopl(2) verwendet werden, mit einem level-Argument von 3.
       Seit Linux 2.6.8 können 65536 Ports angegeben werden.

       Von fork(2) erzeugte Kindprozesse erben die Zugriffsrechte (siehe aber auch HINWEISE). Die Rechte bleiben
       über Aufrufe von execve(2) erhalten. Das ist nützlich für die Gewährung  von  Port-Zugriffsberechtigungen
       für nicht privilegierte Programme.

       Der  Aufruf  ist  hauptsächlich  für  die i386-Architektur. Auf vielen anderen Architekturen existiert er
       nicht und wird immer einen Fehler zurückliefern.

RÜCKGABEWERT

       Bei Erfolg wird Null zurückgegeben. Bei  einem  Fehler  wird  -1  zurückgegeben  und  errno  entsprechend
       gesetzt.

FEHLER

       EINVAL ungültige Werte für from oder num

       EIO    (auf PowerPC) Dieser Aufruf wird nicht unterstützt.

       ENOMEM Speicher aufgebraucht.

       EPERM  Der aufrufende Prozess hat unzureichende Rechte.

KONFORM ZU

       ioperm()  ist  Linux-spezifisch  und  sollte  nicht  in  Programmen verwendet werden, die portierbar sein
       sollen.

ANMERKUNGEN

       Die Datei /proc/ioports zeigt die E/A-Ports, die aktuell im System zugewiesen sind.

       Vor Linux 2.4 wurden Rechte nicht von durch fork(2) erstellte Kinder ererbt.

       Glibc2 hat einen ioperm()-Prototypen sowohl in <sys/io.h> als auch in  <sys/perm.h>.  Vermeiden  Sie  den
       Letzteren, weil er nur für i386 verfügbar ist.

SIEHE AUCH

       iopl(2), outb(2), capabilities(7)

KOLOPHON

       Diese  Seite  ist  Teil  der  Veröffentlichung  4.15  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 Patrick Rother <krd@gulu.net>, Martin Eberhard
       Schauer <Martin.E.Schauer@gmx.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

       Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 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
       <debian-l10n-german@lists.debian.org>.