Add outbound DKIM signing #13

Merged
ober merged 2 commits from security/outbound-starttls into main 2026-08-21 15:01:46 -04:00
Owner

Implements optional outbound DKIM signing for local pickup and authenticated submission.

Changes:

  • Adds dkim_signing_domain, dkim_signing_selector, and dkim_signing_key_path config fields.
  • Signs outbound queued payloads with RSA-SHA256 relaxed/relaxed when all signing fields are configured.
  • Fails queue admission rather than sending unsigned mail when configured signing cannot be performed.
  • Adds DKIM signing coverage without tracked private-key fixtures, plus config validation tests.
  • Bumps VERSION to 0.8.0.

Verification:

  • scripts/daemon-security-check.sh
  • make binary
  • make test
  • ./jsmtp native-version
Implements optional outbound DKIM signing for local pickup and authenticated submission. Changes: - Adds dkim_signing_domain, dkim_signing_selector, and dkim_signing_key_path config fields. - Signs outbound queued payloads with RSA-SHA256 relaxed/relaxed when all signing fields are configured. - Fails queue admission rather than sending unsigned mail when configured signing cannot be performed. - Adds DKIM signing coverage without tracked private-key fixtures, plus config validation tests. - Bumps VERSION to 0.8.0. Verification: - scripts/daemon-security-check.sh - make binary - make test - ./jsmtp native-version
Add outbound DKIM signing
Some checks failed
version-policy / required (pull_request) Successful in 4s
required-ci / required (pull_request) Failing after 5s
9f0f33c5de
Avoid secret fixture in DKIM signing test
All checks were successful
version-policy / required (pull_request) Successful in 2s
required-ci / required (pull_request) Successful in 12m36s
1162b5d5c8
ober scheduled this pull request to auto merge when all checks succeed 2026-08-21 15:01:02 -04:00
ober merged commit bf4c9a9bbd into main 2026-08-21 15:01:46 -04:00
ober referenced this pull request from a commit 2026-08-21 15:01:48 -04:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ober/jerboa-smtp!13
No description provided.