From 3d20702a481bfa4ecc692cd07a7f1fe0a66bb5d9 Mon Sep 17 00:00:00 2001 From: Benedikt Peetz Date: Sun, 9 Feb 2025 00:38:13 +0100 Subject: [PATCH] fix(crates/directory): Guard all enterprise only features behind a `enterprise` cfg block --- crates/directory/src/core/config.rs | 1 + crates/directory/src/core/dispatch.rs | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/crates/directory/src/core/config.rs b/crates/directory/src/core/config.rs index dfb7bf9b..0c3ce96a 100644 --- a/crates/directory/src/core/config.rs +++ b/crates/directory/src/core/config.rs @@ -84,6 +84,7 @@ impl Directories { "memory" => MemoryDirectory::from_config(config, prefix, data_store.clone()) .await .map(DirectoryInner::Memory), + #[cfg(feature = "enterprise")] "oidc" => OpenIdDirectory::from_config(config, prefix, data_store.clone()) .map(DirectoryInner::OpenId), unknown => { diff --git a/crates/directory/src/core/dispatch.rs b/crates/directory/src/core/dispatch.rs index a99e54fe..062f29c9 100644 --- a/crates/directory/src/core/dispatch.rs +++ b/crates/directory/src/core/dispatch.rs @@ -24,6 +24,7 @@ impl Directory { DirectoryInner::Imap(store) => store.query(by).await, DirectoryInner::Smtp(store) => store.query(by).await, DirectoryInner::Memory(store) => store.query(by).await, + #[cfg(feature = "enterprise")] DirectoryInner::OpenId(store) => store.query(by, return_member_of).await, } .caused_by(trc::location!()) @@ -37,6 +38,7 @@ impl Directory { DirectoryInner::Imap(store) => store.email_to_id(address).await, DirectoryInner::Smtp(store) => store.email_to_id(address).await, DirectoryInner::Memory(store) => store.email_to_id(address).await, + #[cfg(feature = "enterprise")] DirectoryInner::OpenId(store) => store.email_to_id(address).await, } .caused_by(trc::location!()) @@ -57,6 +59,7 @@ impl Directory { DirectoryInner::Imap(store) => store.is_local_domain(domain).await, DirectoryInner::Smtp(store) => store.is_local_domain(domain).await, DirectoryInner::Memory(store) => store.is_local_domain(domain).await, + #[cfg(feature = "enterprise")] DirectoryInner::OpenId(store) => store.is_local_domain(domain).await, } .caused_by(trc::location!())?; @@ -84,6 +87,7 @@ impl Directory { DirectoryInner::Imap(store) => store.rcpt(email).await, DirectoryInner::Smtp(store) => store.rcpt(email).await, DirectoryInner::Memory(store) => store.rcpt(email).await, + #[cfg(feature = "enterprise")] DirectoryInner::OpenId(store) => store.rcpt(email).await, } .caused_by(trc::location!())?; @@ -104,6 +108,7 @@ impl Directory { DirectoryInner::Imap(store) => store.vrfy(address).await, DirectoryInner::Smtp(store) => store.vrfy(address).await, DirectoryInner::Memory(store) => store.vrfy(address).await, + #[cfg(feature = "enterprise")] DirectoryInner::OpenId(store) => store.vrfy(address).await, } .caused_by(trc::location!()) @@ -117,6 +122,7 @@ impl Directory { DirectoryInner::Imap(store) => store.expn(address).await, DirectoryInner::Smtp(store) => store.expn(address).await, DirectoryInner::Memory(store) => store.expn(address).await, + #[cfg(feature = "enterprise")] DirectoryInner::OpenId(store) => store.expn(address).await, } .caused_by(trc::location!()) @@ -130,6 +136,7 @@ impl Directory { | DirectoryInner::Imap(_) | DirectoryInner::Smtp(_) | DirectoryInner::Memory(_) => false, + #[cfg(feature = "enterprise")] DirectoryInner::OpenId(_) => true, } } -- 2.47.1