MPROTECT(2)               NetBSD 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 region. 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 Placeholder when requesting no access permission.
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. The PROT_EXEC flag was attempted on pages which belong to a file system mounted with the NOEXEC flag. The new protection is less restrictive than the pro- tection originally set with mmap(2). PaX mprotect restrictions prohibit the requested pro- tection. [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. NetBSD 9.0 April 27, 2017 NetBSD 9.0

You can also request any man page by name and (optionally) by section:

Command: 
Section: 
Architecture: 
Collection: 
 

Use the DEFAULT collection to view manual pages for third-party software.


Powered by man-cgi 1.15, Panagiotis Christias
Modified for NetBSD by Kimmo Suominen