From: Fabian Grünbichler Date: Tue, 24 May 2022 08:31:54 +0000 (+0200) Subject: api: add new priv to priv name helper X-Git-Tag: v2.3.1~350 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=efa62d44d4727926a2332564527398a117c3ffca;p=proxmox-backup.git api: add new priv to priv name helper for usage in permission check error messages, to allow easily indicating which privs are missing. Signed-off-by: Fabian Grünbichler --- diff --git a/pbs-api-types/src/acl.rs b/pbs-api-types/src/acl.rs index 6cdd0ee6..3142f6fc 100644 --- a/pbs-api-types/src/acl.rs +++ b/pbs-api-types/src/acl.rs @@ -73,6 +73,17 @@ constnamedbitmap! { } } +pub fn privs_to_priv_names(privs: u64) -> Vec<&'static str> { + PRIVILEGES + .iter() + .fold(Vec::new(), |mut priv_names, (name, value)| { + if value & privs != 0 { + priv_names.push(name); + } + priv_names + }) +} + /// Admin always has all privileges. It can do everything except a few actions /// which are limited to the 'root@pam` superuser pub const ROLE_ADMIN: u64 = u64::MAX;