maddy 0.2
Stability: This version is believed to be stable enough for use in use
non-critical deployments. Database structure for sql
(imapsql) module is
compatible with 0.1. Configuration requires some changes.
Incompatible changes & migration notes
-
alias_file
is replaced with genericreplace_rcpt
module that can use any "table"-like structure for lookups.
Migration: Replacealias_file /etc/maddy/aliases
withreplace_rcpt file_table /etc/maddy/aliases
. -
replace_rcpt
now relies on tables to handle regexp and static replacements.
Migration: Replacereplace_rcpt postmaster postmaster@$(primary_domain)
withreplace_rcpt static { entry postmaster postmaster@$(primary_domain)
.
Replacereplace_rcpt "(.+)\+(.+)@(.+)" "$1@$3"
with
replace_rcpt regexp "(.+)\+(.+)@(.+)" "$1@$3"
. -
Module
sql
is renamed toimapsql
. Change its name in the
configuration block definition forlocal_mailboxes
/local_authdb
. -
Configuration parser now requires a new line after
}
closing the block.
New features
-
Authentication code is refined and generalized. It permits the implementation
of additional more complex SASL mechanisms such as TLS client certificate
authentication and OAuth2 support. These are not implemented in 0.2 though.
What is currently accessible is the ability to use multiple password-based
authentication providers to allow user login based on any match from any
credentials store configured. -
Generic Postfix-like string lookup abstraction is introduced. Alias rewriting
is updated to use. Additionally, it is possible to use it for password-based
authentication now. Currently implemented "tables" are:identity
(returns
the lookup key),dummy
(empty table),sql_table
(returns the result of
a SQL query),static
(hardcoded mapping),regexp
(Regular
Expression-based rewrite of lookup key). -
sign_dkim
module now supports multiple domains in a single configuration,
avoiding the need for complex dispatching. -
maddy -v
output now includes compile-time defaults forstate_dir
,
runtime_dir
and configuration path. -
build.sh
script can now customize default values forstate_dir
and
runtime_dir
.
Bug fixes
- Fix race in
file_table
reload test (a91d8c2) - Fix misuse of TriesCount in queue (ceda725)
- Fix queue retry delay calculation (4b3e7ce)
Build artifacts
Artifact | SHA-256 |
---|---|
maddy executable (Linux, x86_64, musl) | b9a5c29c50575f63e3b3de7b8ad0380917ff568560da3860580186c53be89304 |
maddyctl executable (Linux, x86_64, musl) | 7bc9ac4cf62e8317a2ef0fa6ff3a8cde6877a2f972c94c1bcbd8f8f0bd4c148e |
Full Zstd tarball (Linux, x86_64, musl) | 154617ed5a9314947c67272edc2a884e0df4664e537816ae6da832f30e00d5dc |
Sourec code tarball | 6f3799d8158d5b9e4625084ab6548fc70c98acdc0234e2acac7e05e553753753 |
🔒 Attached tarballs are signed using PGP key 3197 BBD9 5137 E682 A597 17B4 34BB 2007 0813 96F4
Build artifacts are produced using the same environment as 0.1.