From nobody Sun Oct 05 13:45:38 2025 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cfkDy6BdLz69x6F; Sun, 05 Oct 2025 13:45:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cfkDy4cjhz3wbN; Sun, 05 Oct 2025 13:45:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1759671938; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cE2CGK/vA++EsF2Uvz1xR7YgJXshULBxSYOt+ieCrtQ=; b=HpxCL7ODI6HLVxyT6Tk5w7lIt+CHgq5tcz215FS4uiq5AjuIvgpS8PEkR/dKV5UEfKI1WZ pyc3/gPin9ADwTkfojSdEEuqN+ECGPzxJcnrgqAGWCDvGkraetF3LIa2fDMQSFKg8jqjfC 37RWL8PsD8MbLTk9zOcpY+Je8rmI4f6oSDupWWZFmyx76zzBJdG46DjTWmjK3RTP9lLcgL hK/m6s1MAHOW6g9vRn6H5dmQs6s/6UrZBdPNry0Kh45mZQOabm53eTaW+uoGfylEHxr/ne UedIs2vtDmmDJslUanEoK1ZRSRRGJgb9SGVKYP+8kZ4ZbfadXUNOvf7+xyY1OQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1759671938; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cE2CGK/vA++EsF2Uvz1xR7YgJXshULBxSYOt+ieCrtQ=; b=joO3ngzldgPpLlPTVplW8uq1Sq/4m/sJ2jnmILswoV0+ITH1J6cTp/iAruLaS4rC+rhvPH ODe2gOqT8Evpar8RKYJDKUgWiQRDi1rKoO8ododz1PxYWQ14dPvzBApShsFdr91AiXZeNp thdkvplVQNQx98Pd5t1alMYPNzxCxIAPQMuXJbXWDiS9NGSF/nbANCaBHQF3qKpbDqf6Yv vuPjNwDcqDRdWQv/E6xEgHSCEo6deIhKLlu73BW4jz541MyyQzNKy9Qn6kefqLt50/y8KG khf5Nh2ZLDi1HcUnBBnGsEdv2TaJWfwDDfqoRWs/18XOscapuy2dTee2Po3gfw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1759671938; a=rsa-sha256; cv=none; b=GtZ60Ae64BccNkRQB6QltyHoxTzoovX5Xg0WvZ/JJ/lskzvjUF23zhzCOn12DO1+0H1Kxa +r08VRZN0fndMVwFs6c8Bw0XIbaVYAch6RaOUcF/tID0u7gD8lQvyivlcCIR8lBoiFS33Z J+ek5zP3dXIFQuZICtIUk4cXUI9ngUZzytajUcor4fd0vlGLAQgXtX583sHdD+fnQ2dsE2 knsDll0NkCU4YM5DKCiaJZk53aPBo8WAjBhmBACqTd2MKjyxszVVEpVFyOM4C6CwohO8xC 3/V3yMHPEoGH7J8XU5QJgOdgsoBgaGh8ri1WrPfVIyIxhIOsefCrvraxAl6ySg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cfkDy3hnqzVl; Sun, 05 Oct 2025 13:45:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 595DjcmX032208; Sun, 5 Oct 2025 13:45:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 595Djcvi032205; Sun, 5 Oct 2025 13:45:38 GMT (envelope-from git) Date: Sun, 5 Oct 2025 13:45:38 GMT Message-Id: <202510051345.595Djcvi032205@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Robert Clausecker Subject: git: 0404ac4cad9b - main - mail/opensmtpd-filter-dkimsign: DKIM filter for OpenSMTPd List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-all@freebsd.org Sender: owner-dev-commits-ports-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: fuz X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0404ac4cad9ba5fd3bd86872e65fa16265eac3e1 Auto-Submitted: auto-generated The branch main has been updated by fuz: URL: https://cgit.FreeBSD.org/ports/commit/?id=0404ac4cad9ba5fd3bd86872e65fa16265eac3e1 commit 0404ac4cad9ba5fd3bd86872e65fa16265eac3e1 Author: Matthieu Valleton AuthorDate: 2025-10-01 15:59:27 +0000 Commit: Robert Clausecker 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 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 dkimsign