Date: Sun, 5 Oct 2025 13:45:38 GMT From: Robert Clausecker <fuz@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: 0404ac4cad9b - main - mail/opensmtpd-filter-dkimsign: DKIM filter for OpenSMTPd Message-ID: <202510051345.595Djcvi032205@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by fuz: URL: https://cgit.FreeBSD.org/ports/commit/?id=0404ac4cad9ba5fd3bd86872e65fa16265eac3e1 commit 0404ac4cad9ba5fd3bd86872e65fa16265eac3e1 Author: Matthieu Valleton <mvalleton@seos.fr> AuthorDate: 2025-10-01 15:59:27 +0000 Commit: Robert Clausecker <fuz@FreeBSD.org> CommitDate: 2025-10-05 13:44:07 +0000 mail/opensmtpd-filter-dkimsign: DKIM filter for OpenSMTPd This filter adds a DKIM signature to emails sent through OpenSMTPd. The rsa and ed25519 signing algorithms are supported, as well as the simple and relaxed canonicalization algorithms. The filter can sign emails for several domains, selecting them according to the from-header, but can only use a single selector, managing multiple selectors must be done at the OpenSMTPd level. It depends on the libopensmtpd port. An example of a minimal configuration for signing outgoing emails for domain "example.com" and selector "_selector" would be: filter "dkimsign" proc-exec "filter-dkimsign -d example.com -s _selector \ -k /usr/local/etc/smtpd/dkim/private.key" user _smtpd group _smtpd And then you can apply that filter to the mail that needs to be signed: listen on lo0 filter dkimsign WWW: https://imperialat.at/dev/filter-dkimsign/ PR: 283823 --- mail/Makefile | 1 + mail/opensmtpd-filter-dkimsign/Makefile | 36 ++++++++++++++++++++++++++++++++ mail/opensmtpd-filter-dkimsign/distinfo | 3 +++ mail/opensmtpd-filter-dkimsign/pkg-descr | 20 ++++++++++++++++++ 4 files changed, 60 insertions(+) diff --git a/mail/Makefile b/mail/Makefile index aba4803ad97c..092979a16662 100644 --- a/mail/Makefile +++ b/mail/Makefile @@ -290,6 +290,7 @@ SUBDIR += opensmtpd-extras-table-redis SUBDIR += opensmtpd-extras-table-socketmap SUBDIR += opensmtpd-extras-table-sqlite + SUBDIR += opensmtpd-filter-dkimsign SUBDIR += opensmtpd-filter-rspamd SUBDIR += opensmtpd-filter-senderscore SUBDIR += opensmtpd-table-sqlite diff --git a/mail/opensmtpd-filter-dkimsign/Makefile b/mail/opensmtpd-filter-dkimsign/Makefile new file mode 100644 index 000000000000..802c3786498c --- /dev/null +++ b/mail/opensmtpd-filter-dkimsign/Makefile @@ -0,0 +1,36 @@ +PORTNAME= filter-dkimsign +DISTVERSION= 0.5 +CATEGORIES= mail +MASTER_SITES= https://imperialat.at/releases/ +PKGNAMEPREFIX= opensmtpd- + +MAINTAINER= mvalleton@seos.fr +COMMENT= Library for writing opensmtpd filters +WWW= https://imperialat.at/dev/filter-dkimsign/ + +LICENSE= ISCL +LICENSE_FILE= ${WRKSRC}/LICENSE + +LIB_DEPENDS= libevent.so:devel/libevent \ + libopensmtpd.so:mail/libopensmtpd + +MAKEFILE= Makefile.gnu +USES= gmake localbase ssl +PLIST_FILES= libexec/opensmtpd/filter-dkimsign \ + share/man/man8/filter-dkimsign.8.gz + +# LDFLAGS used by gmake during build +# MANDIR and BINDIR used by make during install +MAKE_ARGS= BINDIR=${LOCALBASE}/libexec/opensmtpd \ + MANDIR=${LOCALBASE}/share/man/man \ + MK_DEBUG_FILES=no + +# Makefile.gnu's install target uses Linux-specific install options so we +# have to use the OpenBSD Makefile instead. Thus, it's easier to just do +# it manually. +do-install: + ${MKDIR} ${STAGEDIR}${PREFIX}/libexec/opensmtpd + ${INSTALL_PROGRAM} ${WRKSRC}/filter-dkimsign ${STAGEDIR}${PREFIX}/libexec/opensmtpd/ + ${INSTALL_MAN} ${WRKSRC}/filter-dkimsign.8.gz ${STAGEDIR}${PREFIX}/share/man/man8 + +.include <bsd.port.mk> diff --git a/mail/opensmtpd-filter-dkimsign/distinfo b/mail/opensmtpd-filter-dkimsign/distinfo new file mode 100644 index 000000000000..f89f58056d2c --- /dev/null +++ b/mail/opensmtpd-filter-dkimsign/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1735833837 +SHA256 (filter-dkimsign-0.5.tar.gz) = a5b4ec3af5ecb42351a0b5459bdd0f32c00ec55c23050b5f46dfaed8e321974b +SIZE (filter-dkimsign-0.5.tar.gz) = 23709 diff --git a/mail/opensmtpd-filter-dkimsign/pkg-descr b/mail/opensmtpd-filter-dkimsign/pkg-descr new file mode 100644 index 000000000000..2096b86e4bb6 --- /dev/null +++ b/mail/opensmtpd-filter-dkimsign/pkg-descr @@ -0,0 +1,20 @@ +This filter adds a DKIM signature to emails sent through OpenSMTPd. +The rsa and ed25519 signing algorithms are supported, as well as the +simple and relaxed canonicalization algorithms. + +The filter can sign emails for several domains, selecting them +according to the from-header, but can only use a single selector, +managing multiple selectors must be done at the OpenSMTPd level. + +It depends on the libopensmtpd port. + + +An example of a minimal configuration for signing outgoing emails for +domain "example.com" and selector "_selector" would be: + +filter "dkimsign" proc-exec "filter-dkimsign -d example.com -s _selector \ + -k /usr/local/etc/smtpd/dkim/private.key" user _smtpd group _smtpd + +And then you can apply that filter to the mail that needs to be signed: + +listen on lo0 filter dkimsignhome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202510051345.595Djcvi032205>
