access_mask_t
static inline bool access_mask_subset(access_mask_t subset,
access_mask_t superset)
static_assert(BITS_PER_TYPE(access_mask_t) >= LANDLOCK_NUM_ACCESS_FS);
static_assert(BITS_PER_TYPE(access_mask_t) >= LANDLOCK_NUM_ACCESS_NET);
static_assert(BITS_PER_TYPE(access_mask_t) >= LANDLOCK_NUM_SCOPE);
static_assert(sizeof(unsigned long) >= sizeof(access_mask_t));
access_mask_t fs : LANDLOCK_NUM_ACCESS_FS;
access_mask_t net : LANDLOCK_NUM_ACCESS_NET;
access_mask_t scope : LANDLOCK_NUM_SCOPE;
access_mask_t access : LANDLOCK_NUM_ACCESS_MAX;
access_mask_t quiet : 1;
} __packed __aligned(sizeof(access_mask_t));
static_assert(sizeof(struct layer_mask) == sizeof(access_mask_t));
access_mask_t *const access_request,
access_mask_t access;
get_layer_from_deny_masks(access_mask_t *const access_request,
const access_mask_t all_existing_optional_access,
access_mask_t missing = 0;
BITS_PER_TYPE(access_mask_t)) {
access_mask_t access;
static access_mask_t
access_mask_t missing;
const access_mask_t quiet_mask =
const access_mask_t quiet_mask =
const access_mask_t access)
access_mask_t access;
const access_mask_t all_existing_optional_access;
get_layer_deny_mask(const access_mask_t all_existing_optional_access,
const access_mask_t all_existing_optional_access,
BITS_PER_TYPE(access_mask_t)) {
landlock_get_deny_masks(const access_mask_t all_existing_optional_access,
const access_mask_t optional_access,
access_mask_t all_denied = 0;
const access_mask_t denied = masks->layers[i].access &
8 * sizeof(access_mask_t)) {
landlock_get_deny_masks(const access_mask_t all_existing_optional_access,
const access_mask_t optional_access,
const access_mask_t all_existing_optional_access,
static access_mask_t maybe_remove(const struct dentry *const dentry)
access_mask_t access_request_parent1, access_request_parent2;
const access_mask_t access)
static access_mask_t
access_mask_t access = 0;
access_mask_t open_access_request, full_access_request, allowed_access,
access_mask_t allowed_access = landlock_file(file)->allowed_access;
access_mask_t access_rights, const u32 flags)
access_mask_t child_access = src_parent->layers[i].access &
access_mask_t parent_access = new_parent->layers[i].access;
static bool scope_to_request(const access_mask_t access_request,
KUNIT_EXPECT_EQ(test, 0, (access_mask_t)masks.layers[0].access);
(access_mask_t)masks.layers[0].access);
KUNIT_EXPECT_EQ(test, 0, (access_mask_t)masks.layers[1].access);
KUNIT_EXPECT_EQ(test, 0, (access_mask_t)masks.layers[0].access);
KUNIT_EXPECT_EQ(test, 0, (access_mask_t)masks.layers[1].access);
const access_mask_t access_request)
const access_mask_t access_request_parent1,
const access_mask_t access_request_parent2,
access_mask_t access_masked_parent1, access_masked_parent2;
access_mask_t access_request)
static __attribute_const__ access_mask_t get_mode_access(const umode_t mode)
access_mask_t access_hierarchy, const u32 flags);
access_mask_t allowed_access;
const u16 port, access_mask_t access_rights,
access_mask_t access_request;
access_mask_t access_request;
access_mask_t access_request;
access_mask_t access_request,
const u16 port, access_mask_t access_rights,
access_mask_t access_rights, const u32 flags)
const access_mask_t access, const u32 flags)
landlock_create_ruleset(const access_mask_t fs_access_mask,
const access_mask_t net_access_mask,
const access_mask_t scope_mask)
typedef access_mask_t
access_mask_t
const access_mask_t access_request,
access_mask_t handled_accesses = 0;
const access_mask_t handled = get_access_mask(domain, i);
landlock_create_ruleset(const access_mask_t access_mask_fs,
const access_mask_t access_mask_net,
const access_mask_t scope_mask);
const access_mask_t access, const u32 flags);
const access_mask_t fs_access_mask,
access_mask_t fs_mask = fs_access_mask & LANDLOCK_MASK_ACCESS_FS;
const access_mask_t net_access_mask,
access_mask_t net_mask = net_access_mask & LANDLOCK_MASK_ACCESS_NET;
const access_mask_t scope_mask, const u16 layer_level)
access_mask_t mask = scope_mask & LANDLOCK_MASK_SCOPE;
static inline access_mask_t
static inline access_mask_t
static inline access_mask_t
access_mask_t
const access_mask_t access_request,
access_mask_t access;
access_mask_t mask;
access_mask_t mask;
access_mask_t scope)