mvalid.2 (2010 09)

m
mvalid(2) mvalid(2)
NAME
mvalid() - check memory region for validity
SYNOPSIS
#include <sys/types.h>
#include <sys/mman.h>
int mvalid(
caddr_t addr,
size_t len,
int prot
);
Parameters
addr The address of the region whose validity is to be checked.
len The length in bytes of the region specified by the addr parameter.
prot The desired access protection for the region.
DESCRIPTION
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:
PROT_READ The mapped region can be read.
PROT_WRITE The mapped region can be written.
PROT_EXEC The mapped region can be executed.
The prot parameter can be any combination of
PROT_READ, PROT_WRITE, and PROT_EXEC, ORed
together.
RETURN VALUES
The
mvalid() function returns:
0 Success. Accesses requiring the specified protection are allowed to all addresses within the
specified range of addresses.
-1 Failure. errno is set to indicate the error.
ERRORS
If the
mvalid() function fails, errno may be set to one of the following values:
[EACCES] The range specified by (addr , addr+len) is invalid for the process’s 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.
[EINVAL] The prot parameter is invalid, or the addr parameter is not a multiple of the page size as
returned by
sysconf(_SC_PAGE_SIZE).
[ENOMEM] The range specified by (addr, addr +len ) is invalid for the process’s address space, or the
range specifies one or more unmapped pages.
AUTHOR
mvalid() was developed by HP.
SEE ALSO
mmap(2), mprotect(2), sysconf(2).
HP-UX 11i Version 3: September 2010 1 Hewlett-Packard Company 1

Summary of content (2 pages)