| I386_IOPL(2) | System Calls Manual (i386) | I386_IOPL(2) |
i386_iopl — change
the i386 I/O privilege level
#include
<sys/types.h>
#include
<machine/sysarch.h>
int
i386_iopl(int
iopl);
i386_iopl()
sets the i386 I/O privilege level to the value specified by
iopl.
This call may only be made by the superuser. Additionally, it is only permitted when the securelevel(7) is less than or equal to 0 or the machdep.allowaperture sysctl has been set to a non-zero value.
Note:
Code using the
i386_iopl()
function must be compiled using -li386.
Upon successful completion, i386_iopl()
returns 0. Otherwise, a value of -1 is returned and the global variable
errno is set to indicate the error.
i386_iopl() will fail if:
EPERM]Intel, i386 Microprocessor Programmer's Reference Manual.
You can really hose your machine if you enable user-level I/O and write to hardware ports without care.
| March 24, 2016 | openbsd |