From 82d868751f05a63d24504d451d8ace5935c708cd Mon Sep 17 00:00:00 2001 From: Paul Makles Date: Sat, 4 Mar 2023 20:45:49 +0000 Subject: [PATCH] chore: add privileged override for user permission --- Cargo.lock | 6 +++--- crates/bonfire/Cargo.toml | 2 +- crates/delta/Cargo.toml | 2 +- crates/quark/Cargo.toml | 2 +- crates/quark/src/permissions/impl/user.rs | 4 ++++ 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 20542ea6..461a064f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2792,7 +2792,7 @@ dependencies = [ [[package]] name = "revolt-bonfire" -version = "0.5.14" +version = "0.5.15" dependencies = [ "async-std", "async-tungstenite", @@ -2808,7 +2808,7 @@ dependencies = [ [[package]] name = "revolt-delta" -version = "0.5.14" +version = "0.5.15" dependencies = [ "async-channel", "async-std", @@ -2848,7 +2848,7 @@ dependencies = [ [[package]] name = "revolt-quark" -version = "0.5.14" +version = "0.5.15" dependencies = [ "async-lock", "async-recursion", diff --git a/crates/bonfire/Cargo.toml b/crates/bonfire/Cargo.toml index 7e0685cd..8f71327e 100644 --- a/crates/bonfire/Cargo.toml +++ b/crates/bonfire/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-bonfire" -version = "0.5.14" +version = "0.5.15" license = "AGPL-3.0-or-later" edition = "2021" diff --git a/crates/delta/Cargo.toml b/crates/delta/Cargo.toml index aa97ef44..fd720f06 100644 --- a/crates/delta/Cargo.toml +++ b/crates/delta/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-delta" -version = "0.5.14" +version = "0.5.15" license = "AGPL-3.0-or-later" authors = ["Paul Makles "] edition = "2018" diff --git a/crates/quark/Cargo.toml b/crates/quark/Cargo.toml index 6164701c..264bb034 100644 --- a/crates/quark/Cargo.toml +++ b/crates/quark/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-quark" -version = "0.5.14" +version = "0.5.15" license = "AGPL-3.0-or-later" edition = "2021" diff --git a/crates/quark/src/permissions/impl/user.rs b/crates/quark/src/permissions/impl/user.rs index 22c1939e..c1ed1054 100644 --- a/crates/quark/src/permissions/impl/user.rs +++ b/crates/quark/src/permissions/impl/user.rs @@ -51,6 +51,10 @@ pub fn get_relationship(a: &User, b: &str) -> RelationshipStatus { async fn calculate_permission(data: &mut PermissionCalculator<'_>, db: &crate::Database) -> u32 { let user = data.user.get().unwrap(); + if data.perspective.privileged { + return u32::MAX; + } + if data.perspective.id == user.id { return u32::MAX; }