11 May 2026
Autotools is gone. This release also removes the last of the FFR preprocessor guards; fixes a batch of buffer-handling and DNSSEC defects found during audits, and rounds out the build and packaging.
Removed the Autotools build system. The CMake transition is complete; all tests pass on Debian 12 and Arch Linux. The upstream Autotools source is preserved at trusteddomainproject/OpenDKIM for reference.
miltertest, opendkim.pc, and opendkim-lua(3) added to the CMake and Debian builds.
Various CMake housekeeping.
Stripped all remaining #ifdef _FFR_* preprocessor guards across seven source files, keeping the feature branches.
Removed the final FFR guards from opendkim-db.
A code audit of buffer management (conducted with Claude AI) identified a class of snprintf misuse throughout the daemon and library: missing return-value checks, incorrect size arguments, and truncated strings silently used as if complete. These were fixed across the affected files.
A separate audit of the DNSSEC implementation (also conducted with Claude AI) identified five defects, including incorrect error propagation on validation failure, missing checks on DNS response fields, and gaps in DNSSEC status handling. All five were fixed.
Fixed assert() misuse in the test suite that caused silent test failures when built with -DNDEBUG.
Fixed a malformed Debian changelog from the previous release.
Added a refile type-check for the sign-table validation walk, which only works on flat files.
The pre-existing opendkim-lua(3) man page was added to the CMake build — it had been inadvertently omitted when the build system was ported from Autotools.
Updated project documentation and sample configuration to reflect changes since the fork. Added a README for miltertest.