Differences between version 2 and previous revision of ioperm(2).
Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 2 | Last edited on Thursday, February 20, 2003 11:42:34 pm | by PerryLorier | Revert |
Older page: | version 1 | Last edited on Tuesday, June 4, 2002 12:23:42 am | by perry | Revert |
@@ -1,61 +1,28 @@
-IOPERM
-!!!IOPERM
-NAME
-SYNOPSIS
-DESCRIPTION
-RETURN VALUE
-CONFORMING TO
-NOTES
-SEE ALSO
-----
!!NAME
+ioperm - set port input/output permissions
-
-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''__);__
-__#include __ /* for libc5 */__
-#include /* for glibc */
-
-
-__int ioperm(unsigned long__ ''from''__, unsigned
-long__ ''num''__, int__
-''turn_on''__);__
!!DESCRIPTION
+ioperm(2) sets the port access permission bits for the process for ''num'' bytes starting from port address __from__ to the value __turn_on__. The use of
+ioperm(2) requires root privileges.
+Only the first 0x3ff I/O ports can be specified in this manner. For more ports, the iopl(2) 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.
-__Ioperm__ sets the port access permission bits for the
-process for ''num'' bytes starting from port address
-__from__ to the value __turn_on__. The use of
-__ioperm__ requires root privileges.
-
-
-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.
-
-On success, zero is returned. On error, -1 is returned, and
-''errno'' is set appropriately.
!!CONFORMING TO
+ioperm(2) is Linux specific and should not be used in programs intended to be portable.
-
-__ioperm__ is Linux specific and should not be used in
-programs 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.
-
-Libc5 treats it as a system call and has a prototype in
-''''. Glibc1 does not have a prototype.
-Glibc2 has a prototype both in '''' and
-in ''''. Avoid the latter, it is
-available on i386 only.
!!SEE ALSO
-
-
iopl(2)
-----