## i386_io_port_add

Function - Permit target thread to invoke operations on the specified device.

### SYNOPSIS

    kern_return_t   i386_io_port_add
                    (thread_act_t                        target_act,
                     device_t                                device);

### PARAMETERS

target_act
  [in thread send right] Thread whose permission bitmap is to be set.

device
  [in device send right] The device to which I/O instructions are to be permitted.

### DESCRIPTION

The i386_io_port_add function adds a device to the I/O permission bitmap for a thread, thereby permitting the thread to execute I/O instructions against the device.

### NOTES

Normally, the thread must have called i386_io_port_add for all devices to which it will execute I/O instructions. However, possessing send rights to the iopl device port will cause the iopl device to be automatically added to the thread's I/O map upon first attempted access. This is a backward compatibility feature for the DOS emulator.

### RETURN VALUES

Only generic errors apply.

### RELATED INFORMATION

Functions: i386_io_port_list, i386_io_port_remove.