IOPERMSection: Linux Programmer's Manual (2)
Index Return to Main Contents
NAMEioperm - set port input/output permissions
SYNOPSIS#include <unistd.h> /* for libc5 */
#include <sys/io.h> /* for glibc */
DESCRIPTIONioperm() sets the port access permission bits for the calling process for num bytes starting from port address from to the value turn_on. If turn_on is non-zero, the calling process must be privileged (CAP_SYS_RAWIO).
Only the first 0x3ff I/O ports can be specified in this manner. For more ports, the iopl(2) system call must be used.
RETURN VALUEOn success, zero is returned. On error, -1 is returned, and errno is set appropriately.
- Invalid values for from or num.
- (on PowerPC) This call is not supported.
- Out of memory.
- The calling process has insufficient privilege.
CONFORMING TOioperm() is Linux-specific and should not be used in programs intended to be portable.
NOTESLibc5 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 ALSOiopl(2), capabilities(7)
COLOPHONThis page is part of release 3.21 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/.