dependabot[bot]
4fc1ddbeae
chore(deps): Bump taiki-e/install-action from 2.69.13 to 2.71.2 ( #112 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.69.13 to 2.71.2.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/704f92c11daa75bff5b4e01fcb083350c16c47b9...d858f8113943481093e02986a7586a4819a3bfd6 )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.71.2
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
8f6f5a9f81
chore(release): prepare for 0.6.1 ( #109 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
7f1521d7cd
feat: Add experimental option to disable mailboxes ( #108 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
dependabot[bot]
8927fc5c58
chore(deps): Bump taiki-e/install-action from 2.69.4 to 2.69.13 ( #107 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.69.4 to 2.69.13.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/a7e592b24782184db1613493a5e65d2e12199f80...704f92c11daa75bff5b4e01fcb083350c16c47b9 )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.69.13
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
dependabot[bot]
7f83b82f14
chore(deps): Bump env_logger from 0.11.9 to 0.11.10 ( #106 )
...
Bumps [env_logger](https://github.com/rust-cli/env_logger ) from 0.11.9 to 0.11.10.
- [Release notes](https://github.com/rust-cli/env_logger/releases )
- [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-cli/env_logger/compare/v0.11.9...v0.11.10 )
---
updated-dependencies:
- dependency-name: env_logger
dependency-version: 0.11.10
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
dependabot[bot]
26128aca27
chore(deps): Bump dtolnay/rust-toolchain ( #105 )
...
Bumps [dtolnay/rust-toolchain](https://github.com/dtolnay/rust-toolchain ) from efa25f7f19611383d5b0ccf2d1c8914531636bf9 to 3c5f7ea28cd621ae0bf5283f0e981fb97b8a7af9.
- [Release notes](https://github.com/dtolnay/rust-toolchain/releases )
- [Commits](https://github.com/dtolnay/rust-toolchain/compare/efa25f7f19611383d5b0ccf2d1c8914531636bf9...3c5f7ea28cd621ae0bf5283f0e981fb97b8a7af9 )
---
updated-dependencies:
- dependency-name: dtolnay/rust-toolchain
dependency-version: 3c5f7ea28cd621ae0bf5283f0e981fb97b8a7af9
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
af581d558f
feat(resolver): Enable DNSSEC ( #94 )
...
From hickory-resolver docs:
> To enable DNSSEC, enable the dnssec-ring feature.
Related: https://github.com/chatmail/relay/issues/877
Related: https://github.com/hickory-dns/hickory-dns/issues/3519
Closes: https://github.com/chatmail/filtermail/issues/93
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
dependabot[bot]
79e1d78e5b
chore(deps): Bump taiki-e/install-action from 2.68.20 to 2.69.4 ( #102 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.68.20 to 2.69.4.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/4a136ceac97fe29b942ff3b6c749a46c7950d853...a7e592b24782184db1613493a5e65d2e12199f80 )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.69.4
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
Andrey 0xdc09
d4acf064a9
refactor: derive Default for Envelope ( #100 )
2026-08-18 12:21:28 +02:00
Andrey 0xdc09
5b6140a30a
docs(readme): fix typo ( #99 )
...
As suggested in https://github.com/chatmail/filtermail/pull/84#issuecomment-4056084708
2026-08-18 12:21:28 +02:00
dependabot[bot]
96d53b7303
chore(deps): Bump Swatinem/rust-cache from 2.8.2 to 2.9.1 ( #96 )
...
Bumps [Swatinem/rust-cache](https://github.com/swatinem/rust-cache ) from 2.8.2 to 2.9.1.
- [Release notes](https://github.com/swatinem/rust-cache/releases )
- [Changelog](https://github.com/Swatinem/rust-cache/blob/master/CHANGELOG.md )
- [Commits](https://github.com/swatinem/rust-cache/compare/779680da715d629ac1d338a641029a2f4372abb5...c19371144df3bb44fab255c43d04cbc2ab54d1c4 )
---
updated-dependencies:
- dependency-name: Swatinem/rust-cache
dependency-version: 2.9.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
dependabot[bot]
cf8e6bb6a1
chore(deps): Bump actions/download-artifact from 8.0.0 to 8.0.1 ( #95 )
...
Bumps [actions/download-artifact](https://github.com/actions/download-artifact ) from 8.0.0 to 8.0.1.
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](https://github.com/actions/download-artifact/compare/70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3...3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c )
---
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-version: 8.0.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
Andrey 0xdc09
85395860bc
feat: configurable hosts for listen and reinject ( #84 )
...
Adds configurable listen IP and postfix host
via `filtermail_host` and `postfix_host` chatmail.ini config fields.
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
f1515a4d64
chore(release): prepare for 0.6.0 ( #92 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
e9fdbf39d4
feat!: Remove IP verification for domain-literals ( #90 )
...
BREAKING CHANGE: messages using domain-literal
addresses don't require to match the origin
SMTP connection IP anymore.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
a4dacc2768
docs(readme): Improve README.md ( #88 )
...
Fixes #85
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
c8e727c03c
docs(readme): Clarify licensing of the binaries
...
Co-authored-by: holger krekel <holger@merlinux.eu >
2026-08-18 12:21:28 +02:00
Jagoda Ślązak
3b4e91f492
docs(readme): Fix license link
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
dependabot[bot]
44ddab8f38
chore(deps): Bump tokio from 1.49.0 to 1.50.0 ( #86 )
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.49.0 to 1.50.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.49.0...tokio-1.50.0 )
---
updated-dependencies:
- dependency-name: tokio
dependency-version: 1.50.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
dependabot[bot]
8187796e1d
chore(deps): Bump taiki-e/install-action from 2.68.13 to 2.68.20 ( #87 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.68.13 to 2.68.20.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/a3324fb0eb94b8230ec968c3389c1b7929fc2f3b...4a136ceac97fe29b942ff3b6c749a46c7950d853 )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.68.20
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
Andrey 0xdc09
199434e602
refactor: use enum for mode cli arg ( #83 )
2026-08-18 12:21:28 +02:00
dependabot[bot]
721280867a
chore(deps): Bump actions/download-artifact from 7.0.0 to 8.0.0 ( #81 )
...
Bumps [actions/download-artifact](https://github.com/actions/download-artifact ) from 7.0.0 to 8.0.0.
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](https://github.com/actions/download-artifact/compare/37930b1c2abaa49bbe596cd826c3c89aef350131...70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 )
---
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-version: 8.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
dependabot[bot]
b2ab18476a
chore(deps): Bump taiki-e/install-action from 2.68.5 to 2.68.13 ( #82 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.68.5 to 2.68.13.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/71b48393496777ee11188c07a34d48b048a985cd...a3324fb0eb94b8230ec968c3389c1b7929fc2f3b )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.68.13
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
dependabot[bot]
de47a627fd
chore(deps): Bump actions/upload-artifact from 6.0.0 to 7.0.0 ( #80 )
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 6.0.0 to 7.0.0.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/b7c566a772e6b6bfb58ed0dc250532a479d7789f...bbbca2ddaa5d8feaa63e36b76fdaad77386f024f )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: 7.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
07e807bdfe
chore(ci): Fix binary publish job ( #79 )
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
62ce8d474d
chore(release): prepare for 0.5.2 ( #78 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
842e0baa61
chore(ci): Add missing Zig dependency ( #77 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
Jagoda Estera ?l?zak
eea39c7bab
chore(ci): Build and upload binaries in CI ( #76 )
...
Use zigbuild directly instead of cargo-dist,
as cargo-dist doesn't suit our needs well
(e.g. uploading binaries at top level).
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
b17900bca1
chore: Bump cargo-dist ( #73 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
93c0c3a891
feat: Check incoming email return address ( #72 )
...
If the MAIL FROM doesn't match the From header,
we do not reject the mail, as this can be caused
by e.g. SRS forwarding. Instead, we reset the envelope
address, so it is reinjected as `MAIL FROM:<>`
to prevent sending a bounce message.
Closes #67
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
b05164a86e
refactor: Check if email is encrypted before verifying DKIM ( #71 )
...
This way we won't be logging DKIM rejections on messages that
would be rejected anyway due to not being encrypted.
Fixes #69
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:28 +02:00
Jagoda Estera Ślązak
d64d546582
fix(logs): Log correct address for outbound messages ( #70 )
...
Fixes #68
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
9cf0bba7ed
chore(release): prepare for 0.5.1 ( #65 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
4e274ae280
fix(logs): Log From address instead of envelope MAIL FROM. ( #66 )
...
Fixes #64
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
8fefc1cc94
fix(dkim): Accept TXT records with escaped quotes ( #61 )
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
83aa54bb82
fix(smtp): Properly handle bounce messages ( #63 )
...
Closes #58
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
dependabot[bot]
7f6215b875
chore(deps): Bump taiki-e/install-action from 2.67.30 to 2.68.5 ( #57 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.67.30 to 2.68.5.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/288875dd3d64326724fa6d9593062d9f8ba0b131...71b48393496777ee11188c07a34d48b048a985cd )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.68.5
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
9d22b2b79a
fix(dkim): Accept TXT records with no v= tag ( #62 )
...
Cache at most 3 TXT records instead of trying to find one that includes `DKIM`.
Closes #59
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
60ce20d3aa
chore(release): prepare for 0.5.0 ( #56 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
d823b28390
feat: Save rejected messages to /tmp ( #55 )
2026-08-18 12:21:27 +02:00
l
4fde0d5c5f
refactor: do not copy the mail in memory for DKIM verification ( #54 )
...
`String::from_utf8_lossy` always copies the data
for the case when it needs to replace invalid UTF-8,
but we don't want invalid UTF-8 anyway as replacing
invalid UTF-8 characters will break DKIM signature.
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
5b24879573
fix(dkim): Make simple header canonicalization work properly ( #53 )
...
Previously header parsing caused leading whitespaces to be
trimmed in HeaderBody, which resulted in incorrect simple
header canonicalization.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
d8681d237f
chore(release): prepare for 0.4.1 ( #51 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
223fa3c67b
chore(tests): Add a way to disable DKIM for tests ( #50 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
1192531afc
chore(release): prepare for 0.4.0 ( #49 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
3dfac56db9
feat: Support addresses using domain literals ( #42 )
...
If the incoming email comes from address that uses
domain literals `[<ipv4>]` or `[IPv6:<ipv6>]`,
skip DKIM verification and instead check IP
alignment with originating IP from XFORWARD
command.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
23074f0898
feat!: DKIM verifier ( #35 )
...
* feat!: DKIM verifier
This implements a DKIM verification as well as a strict
DKIM signature alignment check with domain in `From`
header address.
Caches the retrieved RDATA using in-memory LRU.
BREAKING CHANGE: incoming messages now require DKIM signatures
aligned to domain of the `From` header address.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
* chore(license): License binaries under GPLv3
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
---------
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
Jagoda Estera Ślązak
dc97e85ebe
chore(release): prepare for 0.3.0 ( #45 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-08-18 12:21:27 +02:00
dependabot[bot]
d59d1c8f8f
chore(deps): Bump dtolnay/rust-toolchain ( #46 )
...
Bumps [dtolnay/rust-toolchain](https://github.com/dtolnay/rust-toolchain ) from f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 to efa25f7f19611383d5b0ccf2d1c8914531636bf9.
- [Release notes](https://github.com/dtolnay/rust-toolchain/releases )
- [Commits](https://github.com/dtolnay/rust-toolchain/compare/f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561...efa25f7f19611383d5b0ccf2d1c8914531636bf9 )
---
updated-dependencies:
- dependency-name: dtolnay/rust-toolchain
dependency-version: efa25f7f19611383d5b0ccf2d1c8914531636bf9
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:27 +02:00
dependabot[bot]
d0891ef3f1
chore(deps): Bump taiki-e/install-action from 2.67.24 to 2.67.30 ( #48 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.67.24 to 2.67.30.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/4573997e3b6c0fbc22f7acab193b00a8a3ca817d...288875dd3d64326724fa6d9593062d9f8ba0b131 )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.67.30
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-18 12:21:27 +02:00