Provided by: manpages-de-dev_1.4-1_all 

BEZEICHNUNG
ioperm - setzt Port-Zugriffsrechte für Eingabe/Ausgabe
ÜBERSICHT
#include <unistd.h> /* für Libc5 */
#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 nicht, das Kind muss die benötigten
Zugriffsrechte selbst aktivieren. 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.
Libc5 behandelt ioperm() als einen Systemaufruf und hat einen Prototyp in <unistd.h>. Glibc1 hat keinen
Prototyp. Glibc2 hat einen 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
This page is part of release 3.54 of the Linux man-pages project. A description of the project, and
information about reporting bugs, can be found at http://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>.
Linux 12. März 2013 IOPERM(2)