Lines Matching +full:non +full:- +full:updatable

1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Landlock LSM - Ruleset management
5 * Copyright © 2016-2020 Mickaël Salaün <mic@digikod.net>
6 * Copyright © 2018-2020 ANSSI
26 * struct landlock_layer - Access rights for a given layer
41 * union landlock_key - Key of a ruleset's red-black tree
49 * @data: Raw data to identify an arbitrary 32-bit value
56 * enum landlock_key_type - Type of &union landlock_key
72 * struct landlock_id - Unique rule identifier for a ruleset
87 * struct landlock_rule - Access rights tied to an object
91 * @node: Node in the ruleset's red-black tree.
114 * struct landlock_ruleset - Landlock ruleset
116 * This data structure must contain unique entries, be updatable, and quick to
121 * @root_inode: Root of a red-black tree containing &struct
130 * @root_net_port: Root of a red-black tree containing &struct
164 * @num_rules: Number of non-overlapping (i.e. not for
172 * non-merged ruleset (i.e. not a domain).
182 * (i.e. future-proof), and to properly handle merged
218 refcount_inc(&ruleset->usage); in landlock_get_ruleset()
222 * landlock_union_access_masks - Return all access rights handled in the
235 for (layer_level = 0; layer_level < domain->num_layers; layer_level++) { in landlock_union_access_masks()
237 .masks = domain->access_masks[layer_level], in landlock_union_access_masks()
255 ruleset->access_masks[layer_level].fs |= fs_mask; in landlock_add_fs_access_mask()
267 ruleset->access_masks[layer_level].net |= net_mask; in landlock_add_net_access_mask()
278 ruleset->access_masks[layer_level].scope |= mask; in landlock_add_scope_mask()
286 return ruleset->access_masks[layer_level].fs | in landlock_get_fs_access_mask()
294 return ruleset->access_masks[layer_level].net; in landlock_get_net_access_mask()
301 return ruleset->access_masks[layer_level].scope; in landlock_get_scope_mask()