Skip to content

Commit

Permalink
Updated README
Browse files Browse the repository at this point in the history
  • Loading branch information
mdecimus committed Jan 20, 2025
1 parent 4eca415 commit d3e5565
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 4 deletions.
10 changes: 8 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,8 @@ Key features:
- Sender **reputation** monitoring by IP address, ASN, domain and email address.
- **Greylisting** to temporarily defer unknown senders.
- **Spam traps** to set up decoy email addresses that catch and analyze spam.
- **Flexible and scalable**:
- **Flexible**:
- Pluggable storage backends with **RocksDB**, **FoundationDB**, **PostgreSQL**, **mySQL**, **SQLite**, **S3-Compatible**, **Azure**, **Redis** and **ElasticSearch** support.
- **Clustering** support with node autodiscovery and partition-tolerant failure detection.
- Full-text search available in 17 languages.
- Sieve scripting language with support for all [registered extensions](https://www.iana.org/assignments/sieve-extensions/sieve-extensions.xhtml).
- Email aliases, mailing lists, subaddressing and catch-all addresses support.
Expand All @@ -73,6 +72,13 @@ Key features:
- Rate limiting.
- Security audited (read the [report](https://stalw.art/blog/security-audit)).
- Memory safe (thanks to Rust).
- **Scalable and fault-tolerant**:
- Designed to handle growth seamlessly, from small setups to large-scale deployments.
- Built with **fault tolerance** and **high availability** in mind, recovers from hardware or software failures with minimal operational impact.
- Partition-tolerant **failure detection**, ensuring continuous operation even during network partitions or node failures.
- **Coordinator-free** architecture with automatic node discovery eliminates central bottlenecks and single points of failure.
- **Kubernetes** support for automated scaling and efficient container orchestration.
- Read replicas, sharded blob storage and in-memory data stores for high performance and low latency.
- **Authentication and Authorization**:
- **OpenID Connect** authentication.
- OAuth 2.0 authorization with [authorization code](https://www.rfc-editor.org/rfc/rfc8628) and [device authorization](https://www.rfc-editor.org/rfc/rfc8628) flows.
Expand Down
5 changes: 3 additions & 2 deletions tests/src/smtp/inbound/ehlo.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ use smtp::core::Session;
use utils::config::Config;

use crate::smtp::{
session::{TestSession, VerifyResponse}, DnsCache, TestSMTP
session::{TestSession, VerifyResponse},
DnsCache, TestSMTP,
};

const CONFIG: &str = r#"
Expand All @@ -28,7 +29,7 @@ mt-priority = [{if = "remote_ip = '10.0.0.1'", then = 'nsep'},
{else = false}]
[session.ehlo]
reject-non-fqdn = true
reject-non-fqdn = "starts_with(remote_ip, '10.0.0.')"
[auth.spf.verify]
ehlo = [{if = "remote_ip = '10.0.0.2'", then = 'strict'},
Expand Down

0 comments on commit d3e5565

Please sign in to comment.