diff options
author | Konstantin Meskhidze <konstantin.meskhidze@huawei.com> | 2023-10-26 04:47:40 +0300 |
---|---|---|
committer | Mickaël Salaün <mic@digikod.net> | 2023-10-26 22:07:09 +0300 |
commit | 13fc6455fa19b0859e1b9640bf09903bec8df4f4 (patch) | |
tree | 1e8feb1150c35a56c8c1249b1fdf8201181283af /security/landlock/syscalls.c | |
parent | 05d3ef8bba77c1b5f98d941d8b2d4aeab8118ef1 (diff) | |
download | linux-13fc6455fa19b0859e1b9640bf09903bec8df4f4.tar.xz |
landlock: Make ruleset's access masks more generic
Rename ruleset's access masks and modify it's type to access_masks_t
to support network type rules in following commits. Add filesystem
helper functions to add and get filesystem mask.
Signed-off-by: Konstantin Meskhidze <konstantin.meskhidze@huawei.com>
Link: https://lore.kernel.org/r/20231026014751.414649-2-konstantin.meskhidze@huawei.com
Signed-off-by: Mickaël Salaün <mic@digikod.net>
Diffstat (limited to 'security/landlock/syscalls.c')
-rw-r--r-- | security/landlock/syscalls.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/security/landlock/syscalls.c b/security/landlock/syscalls.c index 245cc650a4dc..7ec6bbed7117 100644 --- a/security/landlock/syscalls.c +++ b/security/landlock/syscalls.c @@ -310,6 +310,7 @@ SYSCALL_DEFINE4(landlock_add_rule, const int, ruleset_fd, struct path path; struct landlock_ruleset *ruleset; int res, err; + access_mask_t mask; if (!landlock_initialized) return -EOPNOTSUPP; @@ -346,10 +347,10 @@ SYSCALL_DEFINE4(landlock_add_rule, const int, ruleset_fd, } /* * Checks that allowed_access matches the @ruleset constraints - * (ruleset->fs_access_masks[0] is automatically upgraded to 64-bits). + * (ruleset->access_masks[0] is automatically upgraded to 64-bits). */ - if ((path_beneath_attr.allowed_access | ruleset->fs_access_masks[0]) != - ruleset->fs_access_masks[0]) { + mask = landlock_get_fs_access_mask(ruleset, 0); + if ((path_beneath_attr.allowed_access | mask) != mask) { err = -EINVAL; goto out_put_ruleset; } |