iOS Developer Library Developer
Search
ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



MPROTECT(2)                 BSD System Calls Manual                MPROTECT(2)

NAME
     mprotect -- control the protection of pages

SYNOPSIS
     #include <sys/mman.h>

     int
     mprotect(void *addr, size_t len, int prot);

DESCRIPTION
     The mprotect() system call changes the specified pages to have protection
     prot.  Not all implementations will guarantee protection on a page basis;
     the granularity of protection changes may be as large as an entire
     region.

RETURN VALUES
     Upon successful completion, a value of 0 is returned.  Otherwise, a value
     of -1 is returned and errno is set to indicate the error.

ERRORS
     mprotect() will fail if:

     [EACCES]           The requested protection conflicts with the access
                        permissions of the process on the specified address
                        range.

     [EINVAL]           addr is not a multiple of the page size.

     [ENOTSUP]          The combination of accesses requested in prot is not
                        supported.

LEGACY SYNOPSIS
     #include <sys/types.h>
     #include <sys/mman.h>

     The include file <sys/types.h> is necessary.

     int
     mprotect(caddr_t addr, size_t len, int prot);

     The type of addr has changed.

SEE ALSO
     madvise(2), mincore(2), msync(2), munmap(2), compat(5)

HISTORY
     The mprotect() function first appeared in 4.4BSD.

BSD                              June 9, 1993                              BSD
Feedback