*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->FreeBSD man pages -> mprotect (2)              



NAME    [Toc]    [Back]

     mprotect -- control the protection of pages

LIBRARY    [Toc]    [Back]

     Standard C Library (libc, -lc)

SYNOPSIS    [Toc]    [Back]

     #include <sys/mman.h>

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

DESCRIPTION    [Toc]    [Back]

     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.  A region is the virtual address space defined by the start and
     end addresses of a struct vm_map_entry.

     Currently these protection bits are known, which can be combined, OR'd

     PROT_NONE	 No permissions at all.
     PROT_READ	 The pages can be read.
     PROT_WRITE  The pages can be written.
     PROT_EXEC	 The pages can be executed.

RETURN VALUES    [Toc]    [Back]

     The mprotect() function returns the value 0 if successful; otherwise the
     value -1 is returned and the global variable errno is set to indicate the

ERRORS    [Toc]    [Back]

     The mprotect() system call will fail if:

     [EINVAL]		The virtual address range specified by the addr and
			len arguments is not valid.

     [EACCES]		The calling process was not allowed to change the protection
 to the value specified by the prot argument.

SEE ALSO    [Toc]    [Back]

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

HISTORY    [Toc]    [Back]

     The mprotect() system call first appeared in 4.4BSD.

FreeBSD 5.2.1			 June 9, 1993			 FreeBSD 5.2.1
[ Back ]
 Similar pages
Name OS Title
minherit OpenBSD control the inheritance of pages
minherit NetBSD control the inheritance of pages
minherit FreeBSD control the inheritance of pages
vm_page_protect FreeBSD lower a page's protection
pmap_protect FreeBSD set physical page protection
pts OpenBSD Manage AFS protection database
mprotect IRIX set protection of memory mapping
pmap_page_protect FreeBSD set physical page protection
fbtab OpenBSD change device protection upon login
fbtab FreeBSD change device protection upon login
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service