Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
MPROTECT(2)		    BSD	System Calls Manual		   MPROTECT(2)

NAME
     mprotect -- control the protection	of pages

LIBRARY
     Standard C	Library	(libc, -lc)

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	re-
     gion.

     The protections (region accessibility) are	specified in the prot argument
     by	OR'ing the following values:

	   PROT_EXEC   Pages may be executed.

	   PROT_READ   Pages may be read.

	   PROT_WRITE  Pages may be written.

	   PROT_NONE   No permissions.

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
     [EACCES]		A memory protection violation occurred,	or the
			PROT_EXEC flag was attempted on	pages which belong to
			a filesystem mounted with the NOEXEC flag.

     [EINVAL]		An invalid memory range, or invalid parameters were
			provided.

     [ENOMEM]		A resource shortage occurred while internally calling
			uvm_map_protect(9).

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

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

BSD				 April 3, 2011				   BSD

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=mprotect&sektion=2&manpath=NetBSD+6.0>

home | help