dependabot[bot]
5575df7510
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-04-07 12:46:10 +02:00
Jagoda Estera Ślązak
0f58942998
chore(release): prepare for 0.6.1 ( #109 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-04-01 23:21:32 +02:00
Jagoda Estera Ślązak
05cbf2908c
feat: Add experimental option to disable mailboxes ( #108 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-04-01 23:05:02 +02:00
dependabot[bot]
621eaeeffb
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-03-30 09:46:08 +02:00
dependabot[bot]
ca3393cf48
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-03-30 09:45:50 +02:00
dependabot[bot]
a4497bc10d
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-03-30 09:45:24 +02:00
Jagoda Estera Ślązak
fb77c5be81
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-03-24 08:27:48 +01:00
dependabot[bot]
7da0c34678
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-03-23 10:11:12 +01:00
Andrey 0xdc09
9a4a54cea8
refactor: derive Default for Envelope ( #100 )
2026-03-16 10:01:52 +01:00
Andrey 0xdc09
2aa894f48f
docs(readme): fix typo ( #99 )
...
As suggested in https://github.com/chatmail/filtermail/pull/84#issuecomment-4056084708
2026-03-16 08:49:50 +01:00
dependabot[bot]
23b28bc66e
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-03-14 10:29:54 +01:00
dependabot[bot]
b47b859fcb
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-03-14 10:28:29 +01:00
Andrey 0xdc09
49df79bfa0
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-03-13 17:04:44 +01:00
Jagoda Estera Ślązak
b31e13a417
chore(release): prepare for 0.6.0 ( #92 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-03-13 12:51:38 +01:00
Jagoda Estera Ślązak
8dd9436a0d
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-03-13 12:25:45 +01:00
Jagoda Estera Ślązak
82a9850a4b
docs(readme): Improve README.md ( #88 )
...
Fixes #85
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-03-12 18:15:08 +01:00
Jagoda Estera Ślązak
779e7ca2b4
docs(readme): Clarify licensing of the binaries
...
Co-authored-by: holger krekel <holger@merlinux.eu >
2026-03-11 19:00:56 +01:00
Jagoda Ślązak
0d7f5d7b05
docs(readme): Fix license link
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-03-11 18:04:14 +01:00
dependabot[bot]
07496abab4
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-03-11 10:56:32 +01:00
dependabot[bot]
a8033b107e
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-03-11 10:53:51 +01:00
Andrey 0xdc09
c088cbfe4d
refactor: use enum for mode cli arg ( #83 )
2026-03-05 10:17:37 +01:00
dependabot[bot]
3a571b7aa7
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-03-03 13:50:01 +01:00
dependabot[bot]
962de095c0
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-03-03 13:48:30 +01:00
dependabot[bot]
954d950c2f
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-03-03 13:47:50 +01:00
Jagoda Estera Ślązak
f149797775
chore(ci): Fix binary publish job ( #79 )
2026-02-28 18:30:47 +01:00
Jagoda Estera Ślązak
3054b31dc7
chore(release): prepare for 0.5.2 ( #78 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-27 18:02:11 +01:00
Jagoda Estera Ślązak
edca7cbf2a
chore(ci): Add missing Zig dependency ( #77 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-27 17:46:16 +01:00
Jagoda Estera ?l?zak
6bb90f8811
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-02-27 10:54:14 +01:00
Jagoda Estera Ślązak
e62b161848
chore: Bump cargo-dist ( #73 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-25 16:24:58 +01:00
Jagoda Estera Ślązak
82618de311
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-02-25 16:20:08 +01:00
Jagoda Estera Ślązak
a5c6880ceb
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-02-25 16:10:01 +01:00
Jagoda Estera Ślązak
2e1c38466c
fix(logs): Log correct address for outbound messages ( #70 )
...
Fixes #68
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-25 16:08:41 +01:00
Jagoda Estera Ślązak
ff3ffd54ef
chore(release): prepare for 0.5.1 ( #65 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-24 12:04:43 +01:00
Jagoda Estera Ślązak
e1841cb590
fix(logs): Log From address instead of envelope MAIL FROM. ( #66 )
...
Fixes #64
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-24 11:58:28 +01:00
Jagoda Estera Ślązak
52208c42b6
fix(dkim): Accept TXT records with escaped quotes ( #61 )
2026-02-24 08:12:17 +01:00
Jagoda Estera Ślązak
8a1684d488
fix(smtp): Properly handle bounce messages ( #63 )
...
Closes #58
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-23 19:45:21 +01:00
dependabot[bot]
38627bfb4b
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-02-23 19:45:01 +01:00
Jagoda Estera Ślązak
6145be4108
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-02-23 19:44:30 +01:00
Jagoda Estera Ślązak
288afa3273
chore(release): prepare for 0.5.0 ( #56 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-20 18:12:35 +01:00
Jagoda Estera Ślązak
54982b1fdd
feat: Save rejected messages to /tmp ( #55 )
2026-02-20 15:38:46 +01:00
l
94f1b29917
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-02-19 19:06:08 +01:00
Jagoda Estera Ślązak
7d4fac698f
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-02-19 14:33:40 +01:00
Jagoda Estera Ślązak
083ec1a60b
chore(release): prepare for 0.4.1 ( #51 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-17 13:07:46 +01:00
Jagoda Estera Ślązak
6e2a37956c
chore(tests): Add a way to disable DKIM for tests ( #50 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-17 13:00:31 +01:00
Jagoda Estera Ślązak
4eb7e9fd63
chore(release): prepare for 0.4.0 ( #49 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-17 10:38:31 +01:00
Jagoda Estera Ślązak
4837754245
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-02-16 18:25:21 +01:00
Jagoda Estera Ślązak
a096d0550f
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-02-16 09:50:55 +01:00
Jagoda Estera Ślązak
3bf8395ef6
chore(release): prepare for 0.3.0 ( #45 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-14 14:42:55 +01:00
dependabot[bot]
85d6c381b3
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-02-14 14:36:27 +01:00
dependabot[bot]
21f0614b5d
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-02-14 14:35:33 +01:00