IOPERM(2)           Linux Programmer's Manual           IOPERM(2)

NAME
       ioperm - set port input/output permissions

SYNOPSIS
       #include <unistd.h> /* for libc5 */
       #include <sys/io.h> /* for glibc */

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

DESCRIPTION
       Ioperm sets the port access permission bits for  the  pro-
       cess  for num bytes starting from port address from to the
       value turn_on.  The use of  ioperm  requires  root  privi-
       leges.

       Only  the  first  0x3ff I/O ports can be specified in this
       manner.  For more ports, the iopl function must  be  used.
       Permissions  are  not  inherited on fork, but on exec they
       are. This is useful for giving port access permissions  to
       non-privileged tasks.

RETURN VALUE
       On  success,  zero is returned.  On error, -1 is returned,
       and errno is set appropriately.

CONFORMING TO
       ioperm is Linux specific and should not be  used  in  pro-
       grams intended to be portable.

NOTES
       Libc5  treats  it  as a system call and has a prototype in
       <unistd.h>.  Glibc1 does not have a prototype. Glibc2  has
       a prototype both in <sys/io.h> and in <sys/perm.h>.  Avoid
       the latter, it is available on i386 only.

SEE ALSO
       iopl(2)

Linux                    January 21, 1993                       1