PhoenixDKIM 1.0.0 Released – First Stable release

peregrinus_131 pts1 comments

PhoenixDKIM 1.0.0 — PhoenixDKIM

PhoenixDKIM 1.0.0

15 June 2026

PhoenixDKIM 1.0.0 is the first stable release, closing the 1.0.0 beta<br>series. Alongside the features built up over the betas, this release adds a<br>round of pre-release security and robustness hardening — the testing process<br>is now documented on the Security page.

Signing-side strict-header rejection

With StrictHeaders enabled, a message that cannot be signed<br>because it violates RFC 5322 (for example a duplicate From, a<br>known spoofing vector) is now refused back to its sender — with the specific<br>reason in the SMTP reply — per On-SignatureError (default reject).<br>The verifying side is unchanged: such a message is accepted and the condition<br>recorded in the Authentication-Results field. The two directions are<br>dispositioned independently.

Shutdown race fix

smfi_main() returns without joining libmilter's per-connection<br>worker threads, so the previous teardown could free the configuration, signing<br>key, and databases while a worker was still processing a message — an<br>exit-time use-after-free. The daemon now drains in-flight connections before<br>tearing down. Steady-state processing under load was never affected.

Testing and assurance

Coverage-guided libFuzzer targets for the DKIM-Signature and<br>public-key parsers, on AddressSanitizer/UndefinedBehaviorSanitizer — no<br>crashes, leaks, or undefined behaviour over ~126 million<br>executions.

A DNS failure-mode classification test, an independent-implementation<br>interop cross-check against dkimpy, and a ThreadSanitizer build<br>option.

A leak in the resign + header-binding path and a benign test-tool<br>leak fixed; the suite runs clean under AddressSanitizer/LeakSanitizer.

Full notes:<br>1.0.0 release notes;<br>source and signatures on the Download page.

Back to announcements

phoenixdkim release message first stable security

Related Articles