pmem2_config_set_protection3
Set a protection flags in pmem2_config structure.
Usage
-
#include <libpmem2.h>struct pmem2_config;#define PMEM2_PROT_EXEC (1U << 29)#define PMEM2_PROT_READ (1U << 30)#define PMEM2_PROT_WRITE (1U << 31)#define PMEM2_PROT_NONE 0int pmem2_config_set_protection(struct pmem2_config *cfg,unsigned prot);
Overview
The pmem2_config_set_protection() function sets the protection flags which will be used for memory mapping. The default value in pmem2_config structure is PMEM2_PROT_READ | PMEM2_PROT_WRITE. The argument describes the desired memory protection of the mapping. The memory protection cannot conflict with the file opening-mode. *config* should be already initialized, please see pmem2_config_new(3) for details.
It is either PROT_NONE or the bitwise OR of one or more of the following flags:
- •
-
PMEM2_PROT_EXEC- Pages may be executed.
- •
-
PMEM2_PROT_READ- Pages may be read.
- •
-
PMEM2_PROT_WRITE- Pages may be written.
- •
-
PMEM2_PROT_NONE- Pages may not be accessed. On Windows this flag is not supported.
Return value
The pmem2_config_set_protection() function returns 0 on success or a negative error code on failure.
Errors
The pmem2_config_set_protection() can fail with the following errors:
- •
-
PMEM2_E_INVALID_PROT_FLAG- some or all of the provided flags are not valid.
Releases
3 releases since Debian 11 (Bullseye); the text changed 2 times.