April 12, 2004 I386_IOPL 2 i386

### NAME

i386_iopl - change the i386 I/O privilege level

### LIBRARY

i386 Architecture Library (libi386, -li386)

### SYNOPSIS

```int` i386_iopl(```int iopl`)

### DESCRIPTION

i386_iopl(``) sets the i386 I/O privilege level to the value specified by iopl. This call is restricted to the super-user.

### RETURN VALUES

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.

### ERRORS

i386_iopl(``) will fail if:

[```EPERM`]
  The caller was not the super-user, or the operation was not permitted at the current security level.

### REFERENCES

i386 Microprocessor Programmer's Reference Manual, Intel

### WARNING

You can really hose your machine if you enable user-level I/O and write to hardware ports without care.