mvalid - Check memory region for validity
#include <sys/types.h> #include <sys/mman.h>
int mvalid(
caddr_t addr,
size_t len,
int prot );
Specifies the address of the region whose validity is to
be checked. Specifies length in bytes of the region specified
by the addr parameter. Specifies the desired access
protection for the region.
The mvalid() function checks the validity of a memory
region. A region is considered to be valid if accesses of
the requested type are allowed to all addresses in the
region.
The <sys/mman.h> header file defines the following access
options: The mapped region can be read. The mapped region
can be written. The mapped region can be executed.
The prot parameter can be any combination of PROT_READ,
PROT_WRITE, and PROT_EXEC ORed together.
The mvalid() function returns 0 (zero) if accesses requiring
the specified protection are allowed to all addresses
within the specified range of addresses. Otherwise, the
mvalid() function returns -1 and sets errno to indicate
the error.
If the mvalid() function fails, errno may be set to one of
the following values: The range specified by [addr, addr +
len) is invalid for the process' address space, or the
range specifies one or more unmapped pages, or one or more
pages of the range disallows accesses of the specified
protection. The prot parameter is invalid, or the addr
parameter is not a multiple of the page size as returned
by sysconf(_SC_PAGE_SIZE).
Functions: mmap(2), mprotect(2), sysconf(3)
mvalid(2)
[ Back ] |