Import upstream v0.16.24, stripped

Upstream commit: af37a234981722493b74623a983581691d2b70b6
Enterprise-only files removed or emptied: 63
Enterprise-only snippets removed: 118 in 50 files
Dangling module declarations removed: 5
Edits turning enterprise off: 25
Third-party code: 14 files, 0 not in THIRD-PARTY.md
Renamed identifiers: 62 in 18 files
Verification: clean

The same Enterprise footprint as v0.16.23. The build check fails only on
tests/src/directory/issuer.rs, unchanged since v0.16.23: it calls a helper
from upstream's Enterprise-only OIDC test, and tests issuer-based directory
routing, an Enterprise feature. main has never carried it.
This commit is contained in:
2026-09-28 06:29:38 -07:00
parent 3a272096c0
commit f59b084ce5
98 changed files with 2851 additions and 1068 deletions
+1
View File
@@ -14,6 +14,7 @@ pub mod dkim;
pub mod http;
pub mod report;
pub mod secret;
pub mod spam;
pub mod task;
impl Roles {
+59
View File
@@ -0,0 +1,59 @@
/*
* SPDX-FileCopyrightText: 2020 Stalwart Labs LLC <[email protected]>
*
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-SEL
*/
use crate::schema::prelude::{SpamDnsblServer, SpamRule};
impl SpamRule {
pub fn enable(&self) -> bool {
match self {
SpamRule::Any(rule) => rule.enable,
SpamRule::Url(rule) => rule.enable,
SpamRule::Domain(rule) => rule.enable,
SpamRule::Email(rule) => rule.enable,
SpamRule::Ip(rule) => rule.enable,
SpamRule::Header(rule) => rule.enable,
SpamRule::Body(rule) => rule.enable,
}
}
pub fn set_enable(&mut self, enable: bool) {
match self {
SpamRule::Any(rule) => rule.enable = enable,
SpamRule::Url(rule) => rule.enable = enable,
SpamRule::Domain(rule) => rule.enable = enable,
SpamRule::Email(rule) => rule.enable = enable,
SpamRule::Ip(rule) => rule.enable = enable,
SpamRule::Header(rule) => rule.enable = enable,
SpamRule::Body(rule) => rule.enable = enable,
}
}
}
impl SpamDnsblServer {
pub fn enable(&self) -> bool {
match self {
SpamDnsblServer::Any(server) => server.enable,
SpamDnsblServer::Url(server) => server.enable,
SpamDnsblServer::Domain(server) => server.enable,
SpamDnsblServer::Email(server) => server.enable,
SpamDnsblServer::Ip(server) => server.enable,
SpamDnsblServer::Header(server) => server.enable,
SpamDnsblServer::Body(server) => server.enable,
}
}
pub fn set_enable(&mut self, enable: bool) {
match self {
SpamDnsblServer::Any(server) => server.enable = enable,
SpamDnsblServer::Url(server) => server.enable = enable,
SpamDnsblServer::Domain(server) => server.enable = enable,
SpamDnsblServer::Email(server) => server.enable = enable,
SpamDnsblServer::Ip(server) => server.enable = enable,
SpamDnsblServer::Header(server) => server.enable = enable,
SpamDnsblServer::Body(server) => server.enable = enable,
}
}
}