logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

pmem2_config_set_protection() - set a protection flags in pmem2_config structure.

Description

The pmem2_config_set_protection() function sets the protection flags which will be used for memory map‐ ping. The default value in pmem2_config structure is PMEM2_PROT_READ|PMEM2_PROT_WRITE. The argumentdescribesthedesiredmemoryprotectionofthemapping.Thememoryprotectioncannotconflictwiththefileopening-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.

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.

Name

pmem2_config_set_protection() - set a protection flags in pmem2_config structure.

Return Value

The pmem2_config_set_protection() function returns 0 on success or a negative error code on failure.

See Also

libpmem2(7), pmem2_config_new(3), pmem2_map_new(3) and <https://pmem.io>

Synopsis

#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 0 int pmem2_config_set_protection(struct pmem2_config *cfg, unsigned prot);

See Also