diff --git a/crates/common/src/config/smtp/session.rs b/crates/common/src/config/smtp/session.rs index 5085ebbe..a2c8e7d7 100644 --- a/crates/common/src/config/smtp/session.rs +++ b/crates/common/src/config/smtp/session.rs @@ -749,7 +749,10 @@ impl Default for SessionConfig { ), mechanisms: IfBlock::new::( "session.auth.mechanisms", - [("local_port != 25 && is_tls", "[plain, login, oauthbearer]")], + [ + ("local_port != 25 && is_tls", "[plain, login, oauthbearer]"), + ("local_port != 25", "[oauthbearer]"), + ], "false", ), require: IfBlock::new::<()>( diff --git a/crates/directory/src/backend/internal/manage.rs b/crates/directory/src/backend/internal/manage.rs index 134da198..740ef471 100644 --- a/crates/directory/src/backend/internal/manage.rs +++ b/crates/directory/src/backend/internal/manage.rs @@ -923,7 +923,7 @@ impl ManageDirectory for Store { PrincipalField::Quota, PrincipalValue::IntegerList(quotas), ) if matches!(principal.inner.typ, Type::Tenant) - && quotas.len() <= (Type::Role as usize + 1) => + && quotas.len() <= (Type::Role as usize + 2) => { principal.inner.set(PrincipalField::Quota, quotas); }