summaryrefslogtreecommitdiff
path: root/crates/imap/src/op/namespace.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/imap/src/op/namespace.rs')
-rw-r--r--crates/imap/src/op/namespace.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/crates/imap/src/op/namespace.rs b/crates/imap/src/op/namespace.rs
index 3935955e..0f9ed1ac 100644
--- a/crates/imap/src/op/namespace.rs
+++ b/crates/imap/src/op/namespace.rs
@@ -6,6 +6,7 @@
use crate::core::Session;
use common::listener::SessionStream;
+use directory::Permission;
use imap_proto::{
protocol::{namespace::Response, ImapResponse},
receiver::Request,
@@ -14,6 +15,9 @@ use imap_proto::{
impl<T: SessionStream> Session<T> {
pub async fn handle_namespace(&mut self, request: Request<Command>) -> trc::Result<()> {
+ // Validate access
+ self.assert_has_permission(Permission::ImapNamespace)?;
+
trc::event!(
Imap(trc::ImapEvent::Namespace),
SpanId = self.session_id,