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

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)