pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/mail/sendmail



Module Name:    pkgsrc
Committed By:   jnemeth
Date:           Mon Jan 15 04:43:23 UTC 2024

Modified Files:
        pkgsrc/mail/sendmail: Makefile Makefile.common PLIST distinfo
            options.mk
        pkgsrc/mail/sendmail/patches: patch-af patch-an patch-as patch-at
            patch-aw patch-ay patch-bl patch-bm patch-bn patch-bo patch-bs
Added Files:
        pkgsrc/mail/sendmail/files: site.config.m4-smtputf8
        pkgsrc/mail/sendmail/patches: patch-bt
Removed Files:
        pkgsrc/mail/sendmail/patches: patch-sendmail_tls.c

Log Message:
Update to sendmail 8.17.2: some feature updates and a bunch of bug fixes.

pkgsrc changes:
- remove some backported patches now included upstream
- rename blacklistd option to blacklist to match defaults/mk.conf
  - accept old opiton blacklistd
- add new smtputf8 option to enable SMTP SMTPUTF8 protocol option

                        SENDMAIL RELEASE NOTES

This listing shows the version of the sendmail binary, the version
of the sendmail configuration files, the date of release, and a
summary of the changes in that release.

8.17.2/8.17.2   2023/06/03
        Make sure DANE checks (if enabled) are performed even if
                CACertPath or CACertFile are not set or unusable.
        Note: if the code to set up TLS in the client fails, then
                {verify} will be set to TEMP but DANE requirements
                will be ignored, i.e., by default mail will be sent
                without STARTTLS.  This can be changed via a
                LOCAL_TLS_SERVER ruleset.
        Pass server name to clt_features ruleset instead of client
                name to account for limitations in macro availability
                described below in CONFIG section.  This may break
                custom clt_features rulesets which expect to receive
                the client name as input.
        Fix a regression introduced in 8.17.1: aliases file which
                contain continuation lines caused parsing errors.
        Add an FFR (for future release) compile time option _FFR_LOG_STAGE
                to log the protocol stage as stage= for some errors during
                delivery attempts to make troubleshooting simpler.  This
                new logging may be enabled in a future release.
        When EAI is enabled, milters also got the arguments of MAIL/RCPT
                commands in argv[0] for xxfi_envfrom()/xxfi_envrcpt()
                callbacks instead of just the mail address.
                Problem reported by Dilyan Palauzo.
        When EAI is enabled, mailq prints UTF-8 addresses as such
                if SMTPUTF8 was used.
        When EAI is enabled, the $h macro is now in the correct format.
                Previously this could cause wrong values for relay=
                in log entries and the mailer argument vector.
        When the compile time option USE_EAI is enabled, vacation could
                fail to respond when it should.  Problem reported by
                Alex Hautequest.
        When EAI was enabled, header truncation might not have been
                logged even when it happened. Problem reported by
                Werner Wiethege.
        Handle a possible change in an upcoming release of Cyrus-SASL
                (2.1.28) by changing the definition of an internal flag.
                Patch from Dilyan Palauzo.
        Avoid an assertion failure when an smtps connection is made
                to the server and a milter is unavailable.
                Problem reported by Dilyan Palauzo.
        Fixed some spelling errors in documentation and comments,
                based on a codespell report by Jens Schleusener
                of fossies.org.
        The result of try_tls is now logged using status= instead
                of reject=.
        If tls_rcpt rejected the delivery of a recipient then a bogus
                dsn= entry might have been logged under some circumstances.
        If a server replied with 421 to a RCPT command then a bogus reply=
                might have been logged.
        When quoting the value for ${currHeader} avoid causing a syntax
                error (Unbalanced '"') when truncating a header value
                which is too long.  Problem reported by Werner Wiethege.
        Reduce the performance impact of a change introduced in
                8.12.9: the default for MaxMimeHeaderLength was
                set to 2048/1024.  Problem reported by Tabata
                Shintaro of Internet Initiative Japan Inc.
        CONFIG: The default clt_features ruleset tried to access
                ${server_name} and ${server_addr} which are not set
                when the ruleset is invoked.  Only the server name
                is available which is passed as an argument.
        CONFIG: Properly quote host variable to prevent cf build
                breakage when a hostname contains 'dnl'.  Problem
                reported by Maxim Shalomikhin of Kaspersky.
        DEVTOOLS: Add configure.sh support for BSD's mandoc as an
                alternative man page formatting tool.
        DOC: Document that USAGE is a possible value for {verify}.
        LIBMILTER: The macros for the EOH and EOM callbacks are
                sent in reverse order which means accessing macros
                in the EOM callback got the macro for the EOH
                callback. Store those macros in the expected order
                in libmilter. Note: this does not affect sendmail
                because the macros for both callbacks are the same
                because the message is sent to libmilter after it
                is completely read by sendmail.  Fix and problem
                report from David Buergin.
        Portability:
                Make use of IN_LOOPBACK, if defined, to determine if
                using a loopback address.  Patch from Mike Karels of
                FreeBSD.
                On Linux use gethostbyname2(3) if glibc 2.19 or newer
                is used to avoid potential problems with IPv6 lookups.
                Patch from Werner Wiethege.
                Add support for Darwin 21 and Darwin 22.
                Solaris 12 has been renamed to Solaris 11.4, hence
                adapt a condition for sigwait(2) taking one argument.
                Patch from John Beck.
        New Files:
                devtools/M4/UNIX/sharedlib.m4
                devtools/OS/Darwin.21.x
                devtools/OS/Darwin.22.x
                sendmail/sched.c
                libsm/notify.h

8.17.1/8.17.1   2021/08/17
        Deprecation notice: due to compatibility problems with some
                third party code, we plan to finally switch from K&R
                to ANSI C. If you are using sendmail on a system
                which does not have a compiler for ANSI C contact us
                with details as soon as possible so we can determine
                how to proceed.
        Experimental support for SMTPUTF8 (EAI, see RFC 6530-6533)
                is available when using the compile time option USE_EAI
                (see also devtools/Site/site.config.m4.sample for other
                required settings) and the cf option SMTPUTF8.
                If a mail submission via the command line requires
                the use of SMTPUTF8, e.g., because a header uses UTF-8
                encoding, but the addresses on the command line are all
                ASCII, then the new option -U must be used, and
                the cf option SMTPUTF8 must be set in submit.cf.
                Please test and provide feedback.
        Experimental support for SMTP MTA Strict Transport Security
                (MTA-STS, see RFC 8461) is available when using
                - the compile time option _FFR_MTA_STS (which requires
                  STARTTLS, MAP_REGEX, SOCKETMAP, and _FFR_TLS_ALTNAMES),
                - FEATURE(sts), which implicitly sets the cf option
                  StrictTransportSecurity,
                - postfix-mta-sts-resolver, see
                https://github.com/Snawoot/postfix-mta-sts-resolver.git
        New ruleset check_other which is called for all unknown SMTP
                commands in the server and for commands which do not
                have specific rulesets, e.g., NOOP and VERB.
        New ruleset clt_features which can be used to select features
                in the SMTP client per server.  Currently only two
                flags are available: D/M to disable DANE/MTA-STS,
                respectively.
        New compile time option NO_EOH_FIELDS to disable the special
                meaning of the headers Message: and Text: to denote the
                end of the message header.
        Avoid leaking session macros for an envelope between
                delivery attempts to different servers.  This problem
                could have affected check_compat.
        Avoid leaking actual SMTP replies between delivery attempts
                to different servers which could cause bogus logging
                of reply= entries.
        Change default SMTP reply code for STARTTLS related problems
                from 403 to 454 to better match the RFCs.
        Fix a theoretical buffer overflow when encountering an
                unknown/unsupported socket address family on an
                operating system where sa_data is larger than 30
                (the standard is 14).  Based on patch by Toomas Soome.
        Several potential memory leaks and other similar problems
                (mostly in error handling code) have been fixed.
                Problems reported by Tomas Korbar of RedHat.
        Previously the commands GET, POST, CONNECT, or USER terminate
                a connection immediately only if sent as first command.
                Now this is also done if any of these is sent directly
                after STARTTLS or if the 'h' option is set via
                srv_features.
        CDB map locking has been changed so a sendmail process which
                does have a CDB map open does not block an in-place
                update of the map by makemap.  The simple workaround
                for that problem in earlier versions is to create
                the map under a different name and then move it
                into place.
        On some systems the rejection of a RCPT by a milter could
                silently fail.
        CONFIG: New FEATURE(`check_other') to provide a default
                check_other ruleset.
        CONFIG: FEATURE(`tls_failures') is deprecated and will be
                removed in future versions because it has a fundamental
                problem: it is message oriented but STARTTLS is
                session oriented.  For example, having multiple
                RCPTs in one envelope for different destinations,
                with different temporary errors, does not work
                properly, as the persistent macro applies to all
                RCPTs and hence implicitly to all destinations (servers).
                The option TLSFallbacktoClear should be used if needed.
        CONTRIB: AuthRealm.p0 has been modified for 8.16.1 by Anne Bennett.
        CONTRIB: Added cidrexpand -O option for suppressing duplicates from
                a CIDR expansion that overlaps a later entry and -S option
                for skipping comments exactly like makemap does.
        MAIL.LOCAL: Enhance some error messages to simplify
                troubleshooting.
        Portability:
                Add support for Darwin 19 & 20.
                Use proper FreeBSD version define to allow for cross
                        compiling.  Fix from Brooks Davis of the FreeBSD
                        project.
                NOTE: File locking using fcntl() does not interoperate
                  with Berkeley DB 5.x (and probably later).  Use
                  CDB, flock() (-DHASFLOCK), or an earlier Berkeley
                  DB version.  Problem noted by Harald Hannelius.
        New Files:
                cf/feature/check_other.m4
                cf/feature/sts.m4
                devtools/OS/Darwin.19.x
                devtools/OS/Darwin.20.x
                include/sm/ixlen.h
                libsm/ilenx.c
                libsm/lowercase.c
                libsm/strcaseeq.c
                libsm/t-ixlen.c
                libsm/t-ixlen.sh
                libsm/t-streq.c
                libsm/t-streq.sh
                libsm/utf8_valid.c
                libsm/uxtext_unquote.c
                libsm/xleni.c
                libsmutil/t-lockfile.c
                libsmutil/t-lockfile-0.sh
                libsmutil/t-maplock-0.sh


To generate a diff of this commit:
cvs rdiff -u -r1.142 -r1.143 pkgsrc/mail/sendmail/Makefile
cvs rdiff -u -r1.68 -r1.69 pkgsrc/mail/sendmail/Makefile.common
cvs rdiff -u -r1.25 -r1.26 pkgsrc/mail/sendmail/PLIST
cvs rdiff -u -r1.69 -r1.70 pkgsrc/mail/sendmail/distinfo
cvs rdiff -u -r1.26 -r1.27 pkgsrc/mail/sendmail/options.mk
cvs rdiff -u -r0 -r1.1 pkgsrc/mail/sendmail/files/site.config.m4-smtputf8
cvs rdiff -u -r1.13 -r1.14 pkgsrc/mail/sendmail/patches/patch-af
cvs rdiff -u -r1.4 -r1.5 pkgsrc/mail/sendmail/patches/patch-an
cvs rdiff -u -r1.2 -r1.3 pkgsrc/mail/sendmail/patches/patch-as \
    pkgsrc/mail/sendmail/patches/patch-at
cvs rdiff -u -r1.7 -r1.8 pkgsrc/mail/sendmail/patches/patch-aw
cvs rdiff -u -r1.3 -r1.4 pkgsrc/mail/sendmail/patches/patch-ay
cvs rdiff -u -r1.1 -r1.2 pkgsrc/mail/sendmail/patches/patch-bl \
    pkgsrc/mail/sendmail/patches/patch-bm \
    pkgsrc/mail/sendmail/patches/patch-bn \
    pkgsrc/mail/sendmail/patches/patch-bs
cvs rdiff -u -r1.5 -r1.6 pkgsrc/mail/sendmail/patches/patch-bo
cvs rdiff -u -r0 -r1.1 pkgsrc/mail/sendmail/patches/patch-bt
cvs rdiff -u -r1.1 -r0 pkgsrc/mail/sendmail/patches/patch-sendmail_tls.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/mail/sendmail/Makefile
diff -u pkgsrc/mail/sendmail/Makefile:1.142 pkgsrc/mail/sendmail/Makefile:1.143
--- pkgsrc/mail/sendmail/Makefile:1.142 Tue Oct 24 22:09:50 2023
+++ pkgsrc/mail/sendmail/Makefile       Mon Jan 15 04:43:22 2024
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.142 2023/10/24 22:09:50 wiz Exp $
+# $NetBSD: Makefile,v 1.143 2024/01/15 04:43:22 jnemeth Exp $
 
 PKGNAME=       sendmail-${DIST_VERS}
-PKGREVISION=   3
+#PKGREVISION=  3
 COMMENT=       The well known Mail Transport Agent
 
 CONFLICTS+=    courier-mta-[0-9]* fastforward>=0.51nb2 postfix-[0-9]*
@@ -35,7 +35,8 @@ PKG_GROUPS=           smmsp
 PKG_USERS=             smmsp:smmsp
 PKG_GECOS.smmsp=       Sendmail Message Submission Program
 
-SUBST_CLASSES+=                paths cf-paths
+SUBST_CLASSES+=                paths
+SUBST_CLASSES+=                cf-paths
 
 SUBST_STAGE.paths=     pre-configure
 SUBST_FILES.paths=     ../mailer.conf smrsh/smrsh.8 cf/cf/Makefile
@@ -108,9 +109,12 @@ post-patch: make-sendmail-siteconfig
 .if !empty(PKG_OPTIONS:Msendmail-ffr-badrcptshutdown)
        cat ${FILESDIR}/site.config.m4-ffr_badrcptshutdown >>${SITECONFIG}
 .endif
-.if !empty(PKG_OPTIONS:Mblacklistd)
+.if !empty(PKG_OPTIONS:Mblacklist)
        cat ${FILESDIR}/site.config.m4-blacklistd >>${SITECONFIG}
 .endif
+.if !empty(PKG_OPTIONS:Msmtputf8)
+       cat ${FILESDIR}/site.config.m4-smtputf8 >>${SITECONFIG}
+.endif
 
 post-extract:
        cp ${FILESDIR}/mailer.conf ${WRKDIR}/mailer.conf

Index: pkgsrc/mail/sendmail/Makefile.common
diff -u pkgsrc/mail/sendmail/Makefile.common:1.68 pkgsrc/mail/sendmail/Makefile.common:1.69
--- pkgsrc/mail/sendmail/Makefile.common:1.68   Fri Jan  5 01:17:09 2024
+++ pkgsrc/mail/sendmail/Makefile.common        Mon Jan 15 04:43:22 2024
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.common,v 1.68 2024/01/05 01:17:09 gdt Exp $
+# $NetBSD: Makefile.common,v 1.69 2024/01/15 04:43:22 jnemeth Exp $
 #
 # used by mail/libmilter/Makefile
 # used by mail/sendmail/Makefile
@@ -20,9 +20,9 @@ DISTINFO_FILE=        ${.CURDIR}/../../mail/sen
 FILESDIR=      ${.CURDIR}/../../mail/sendmail/files
 PATCHDIR=      ${.CURDIR}/../../mail/sendmail/patches
 
-USE_LANGUAGES= c99
+USE_CC_FEATURES=       c99
 
-DIST_VERS=     8.16.1
+DIST_VERS=     8.17.2
 
 MAKE_ENV+=     BSD_BINOWN=${BINOWN} BSD_BINGRP=${BINGRP} \
                BSD_MANOWN=${MANOWN} BSD_MANGRP=${MANGRP} \

Index: pkgsrc/mail/sendmail/PLIST
diff -u pkgsrc/mail/sendmail/PLIST:1.25 pkgsrc/mail/sendmail/PLIST:1.26
--- pkgsrc/mail/sendmail/PLIST:1.25     Sun Jul  4 07:57:13 2021
+++ pkgsrc/mail/sendmail/PLIST  Mon Jan 15 04:43:22 2024
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.25 2021/07/04 07:57:13 jnemeth Exp $
+@comment $NetBSD: PLIST,v 1.26 2024/01/15 04:43:22 jnemeth Exp $
 bin/hoststat
 bin/mailq
 bin/newaliases
@@ -103,6 +103,7 @@ share/sendmail/feature/blacklist_recipie
 share/sendmail/feature/block_bad_helo.m4
 share/sendmail/feature/blocklist_recipients.m4
 share/sendmail/feature/check_cert_altnames.m4
+share/sendmail/feature/check_other.m4
 share/sendmail/feature/compat_check.m4
 share/sendmail/feature/conncontrol.m4
 share/sendmail/feature/delay_checks.m4
@@ -145,6 +146,7 @@ share/sendmail/feature/relay_mail_from.m
 share/sendmail/feature/require_rdns.m4
 share/sendmail/feature/smrsh.m4
 share/sendmail/feature/stickyhost.m4
+share/sendmail/feature/sts.m4
 share/sendmail/feature/tls_failures.m4
 share/sendmail/feature/tls_session_features.m4
 share/sendmail/feature/use_client_ptr.m4

Index: pkgsrc/mail/sendmail/distinfo
diff -u pkgsrc/mail/sendmail/distinfo:1.69 pkgsrc/mail/sendmail/distinfo:1.70
--- pkgsrc/mail/sendmail/distinfo:1.69  Thu Jan 12 11:09:34 2023
+++ pkgsrc/mail/sendmail/distinfo       Mon Jan 15 04:43:22 2024
@@ -1,25 +1,25 @@
-$NetBSD: distinfo,v 1.69 2023/01/12 11:09:34 markd Exp $
+$NetBSD: distinfo,v 1.70 2024/01/15 04:43:22 jnemeth Exp $
 
-BLAKE2s (sendmail.8.16.1.tar.gz) = 6f92d35a8dfe1ba071da197ae53559a1d67290f7042e5650ebbdac3d3045fe2f
-SHA512 (sendmail.8.16.1.tar.gz) = d7d4aac3c6d7505782abdb166204901b8b51cac000d610dfe40eda9eef7441a073af9e8e0b14c8719b07b445f55a1e2c28ac63d663d0daa7f1eafc5a101788b2
-Size (sendmail.8.16.1.tar.gz) = 2236402 bytes
+BLAKE2s (sendmail.8.17.2.tar.gz) = 0af32d01e11ef8c414f66903b3f59b5b4dc2bacb9f3ee5a7782a35527dfab2fc
+SHA512 (sendmail.8.17.2.tar.gz) = a25d964136a3efeb7737c34aed34804dd61292bd70eaaba724274a862604a6cd5ca3bcac635e445864c23699b1704c3662d262a5694bd26e298fc1c0e8ba817d
+Size (sendmail.8.17.2.tar.gz) = 2313458 bytes
 SHA1 (patch-aa) = bd1ab754f7146d002eaf8c0347e114b4049a7776
-SHA1 (patch-af) = 21f8c93a13d038fe49f0acbe38ad1453eb67788b
+SHA1 (patch-af) = 8c80610916000dfb4e4e28a64eeb0b283535fc93
 SHA1 (patch-ag) = 6dcca8944aa854f1767c7ee12fe14872a4e14d2e
 SHA1 (patch-ah) = e6be09008b9230ffdd1560aaacbdbb2ee4fb8028
 SHA1 (patch-ai) = 7a306d7239f4036cd8d80d6dbe2a07eb80f02d13
 SHA1 (patch-aj) = e65e6fe44380de2f9c397c1a97677eb4ad285433
-SHA1 (patch-an) = 1481dd98d6aae000e71ba1c42f3d84197a4e4dc0
+SHA1 (patch-an) = 8015196ab361df50cc4a63611f3fe5f1f547cbbe
 SHA1 (patch-ao) = 88dd76b71ad57a8d0efdb6e8518ff01689ecf634
 SHA1 (patch-aq) = 5c083d9f9f71bcc42811a3d085e936eaaa404c96
 SHA1 (patch-ar) = 4e9162c96329716f844c0c64efb9d0a2915ad1cb
-SHA1 (patch-as) = a36d4bf90f6803734bb686d5809a18ac6d8314ce
-SHA1 (patch-at) = d0fd0f3826e2309f14fefde65a8653e01cae058e
+SHA1 (patch-as) = e5e266d3c488494a12c303b068c15edde24e0504
+SHA1 (patch-at) = 7bd83d1171f665ed4fb62181dac7c31098a5e2ee
 SHA1 (patch-au) = 08a96e145a9c37ba1ba836457157f1ab781380dc
 SHA1 (patch-av) = bb6ecd69f6b0db22056b492890d2c6369cd08977
-SHA1 (patch-aw) = 89a0f2c3102f6baea966c8e604f642229ad41dc3
+SHA1 (patch-aw) = e340bd366ce04c4d5ddd15f964bc4040e715a6c9
 SHA1 (patch-ax) = 771c9c8a951a09c80eb85233986af1fc7fedbe77
-SHA1 (patch-ay) = af4c41b9f7671920cd3db95552dc67edffaf729a
+SHA1 (patch-ay) = 0a043f2ff0028d475ee852b302844626f4ff4609
 SHA1 (patch-az) = 53738dc9d3618838a6e6fd2f0ec9c4fd1f19ae2e
 SHA1 (patch-ba) = c190b11b9874f00a18b9c75b6e734f4a9dd3f68f
 SHA1 (patch-bb) = 6c86a60af25b02fc0389f1d40f59c5031d9679f1
@@ -29,11 +29,11 @@ SHA1 (patch-be) = d2f3397b7880f23f8cbd5d
 SHA1 (patch-bf) = 9c5faf5b38c18623e5ce4ffafc00a4430965e41a
 SHA1 (patch-bg) = 716c90ff76edbdcb223111412bdd011d4a252ca6
 SHA1 (patch-bl) = 4fff262691deb2fcacf5013bfeb5aede45783dcd
-SHA1 (patch-bm) = b1ec82ab5a97c2dc7f7230d31e47c89b7b5ac1d9
-SHA1 (patch-bn) = 3af37c9d3523d6093181ae3b7d4c25bc8173b7f9
-SHA1 (patch-bo) = e55b2cb4ee31fdfa593a307b4ec8ca0799f55060
+SHA1 (patch-bm) = ef40555ed40961f76ceedf58c100ac91ce2b0657
+SHA1 (patch-bn) = 8ba1998d579bb7d33ee92bfdf4e4bb2dafab23a0
+SHA1 (patch-bo) = 7dc9b24ebcfdf571c5f8428032325e9d55187daf
 SHA1 (patch-bp) = 9a1daac264aba6c4fc39a63a464b942dd25b06eb
 SHA1 (patch-bq) = 548bf6d373cb49958437548a65803b6f3c6b35d2
 SHA1 (patch-br) = 1f0b9716906b91ce2b867bf65e5c06ad16749e36
-SHA1 (patch-bs) = f73a66b3f747480505b26876430135364e9aa99e
-SHA1 (patch-sendmail_tls.c) = 42b4af86be50f3b0c79fb3a2699b0c683ab34844
+SHA1 (patch-bs) = 2af257532fd837d9817b0b5572027947881b0396
+SHA1 (patch-bt) = 44a297b44071c5c84680af137ed00962f9ea35d4

Index: pkgsrc/mail/sendmail/options.mk
diff -u pkgsrc/mail/sendmail/options.mk:1.26 pkgsrc/mail/sendmail/options.mk:1.27
--- pkgsrc/mail/sendmail/options.mk:1.26        Mon Jul 15 05:30:33 2019
+++ pkgsrc/mail/sendmail/options.mk     Mon Jan 15 04:43:22 2024
@@ -1,16 +1,18 @@
-# $NetBSD: options.mk,v 1.26 2019/07/15 05:30:33 jnemeth Exp $
+# $NetBSD: options.mk,v 1.27 2024/01/15 04:43:22 jnemeth Exp $
 
 PKG_OPTIONS_VAR=       PKG_OPTIONS.sendmail
 PKG_SUPPORTED_OPTIONS= inet6 db2 db4 ldap sasl tls tcpwrappers
 PKG_SUPPORTED_OPTIONS+=        sendmail-ffr-tls sendmail-ffr-badrcptshutdown
+PKG_SUPPORTED_OPTIONS+=        smtputf8
 PKG_SUGGESTED_OPTIONS= inet6 tcpwrappers tls
 
 .include "../../mk/bsd.prefs.mk"
 
 .for dir in ${COMPILER_INCLUDE_DIRS}
 .  if exists(${dir}/blacklist.h)
-PKG_SUPPORTED_OPTIONS+=        blacklistd
-PKG_SUGGESTED_OPTIONS+=        blacklistd
+PKG_SUPPORTED_OPTIONS+=                blacklist
+PKG_SUGGESTED_OPTIONS+=                blacklist
+PKG_OPTIONS_LEGACY_OPTS+=      blacklistd:blacklist
 .  endif
 .endfor
 
@@ -77,3 +79,10 @@ PKG_OPTIONS_LEGACY_OPTS+=    starttls:tls f
 ###
 # Nothing to do here, activation is done in Makefile
 
+###
+### SMTPUTF8 support
+###
+.if !empty(PKG_OPTIONS:Msmtputf8)
+.  include "../../textproc/icu/buildlink3.mk"
+.endif
+

Index: pkgsrc/mail/sendmail/patches/patch-af
diff -u pkgsrc/mail/sendmail/patches/patch-af:1.13 pkgsrc/mail/sendmail/patches/patch-af:1.14
--- pkgsrc/mail/sendmail/patches/patch-af:1.13  Sun Jul  4 07:57:13 2021
+++ pkgsrc/mail/sendmail/patches/patch-af       Mon Jan 15 04:43:22 2024
@@ -1,8 +1,8 @@
-$NetBSD: patch-af,v 1.13 2021/07/04 07:57:13 jnemeth Exp $
+$NetBSD: patch-af,v 1.14 2024/01/15 04:43:22 jnemeth Exp $
 
---- sendmail/conf.c.orig       2020-06-04 06:27:49.000000000 +0000
+--- sendmail/conf.c.orig       2023-04-27 10:39:42.000000000 +0000
 +++ sendmail/conf.c
-@@ -47,6 +47,10 @@ SM_RCSID("@(#)$Id: conf.c,v 8.1192 2014-
+@@ -45,6 +45,10 @@ SM_RCSID("@(#)$Id: conf.c,v 8.1192 2014-
  # include "tls.h"
  #endif
  
@@ -13,7 +13,7 @@ $NetBSD: patch-af,v 1.13 2021/07/04 07:5
  static void   setupmaps __P((void));
  static void   setupmailers __P((void));
  static void   setupqueues __P((void));
-@@ -4312,15 +4316,15 @@ sm_getipnodebyname(name, family, flags, 
+@@ -4322,15 +4326,15 @@ sm_getipnodebyname(name, family, flags, 
        if (family == AF_INET6)
        {
                /* From RFC2133, section 6.1 */
@@ -32,7 +32,7 @@ $NetBSD: patch-af,v 1.13 2021/07/04 07:5
  #  endif
  
        /* the function is supposed to return only the requested family */
-@@ -4536,7 +4540,8 @@ sm_gethostbyaddr(addr, len, type)
+@@ -4551,7 +4555,8 @@ sm_gethostbyaddr(addr, len, type)
  
  #if NETINET6
        if (type == AF_INET6 &&
@@ -42,7 +42,7 @@ $NetBSD: patch-af,v 1.13 2021/07/04 07:5
        {
                /* Avoid reverse lookup for IPv6 unspecified address */
                SM_SET_H_ERRNO(HOST_NOT_FOUND);
-@@ -5690,13 +5695,13 @@ local_hostname_length(hostname)
+@@ -5724,12 +5729,12 @@ local_hostname_length(hostname)
  {
        size_t len_host, len_domain;
  
@@ -53,9 +53,8 @@ $NetBSD: patch-af,v 1.13 2021/07/04 07:5
 -      len_domain = strlen(_res.defdname);
 +      len_domain = strlen(sm_res.defdname);
        if (len_host > len_domain &&
-           (sm_strcasecmp(hostname + len_host - len_domain,
--                      _res.defdname) == 0) &&
-+                      sm_res.defdname) == 0) &&
+-          (SM_STRCASEEQ(hostname + len_host - len_domain, _res.defdname)) &&
++          (SM_STRCASEEQ(hostname + len_host - len_domain, sm_res.defdname)) &&
            hostname[len_host - len_domain - 1] == '.')
                return len_host - len_domain - 1;
        else

Index: pkgsrc/mail/sendmail/patches/patch-an
diff -u pkgsrc/mail/sendmail/patches/patch-an:1.4 pkgsrc/mail/sendmail/patches/patch-an:1.5
--- pkgsrc/mail/sendmail/patches/patch-an:1.4   Sun Jul  4 07:57:13 2021
+++ pkgsrc/mail/sendmail/patches/patch-an       Mon Jan 15 04:43:22 2024
@@ -1,6 +1,6 @@
-$NetBSD: patch-an,v 1.4 2021/07/04 07:57:13 jnemeth Exp $
+$NetBSD: patch-an,v 1.5 2024/01/15 04:43:22 jnemeth Exp $
 
---- sendmail/Makefile.m4.orig  2020-06-08 08:35:03.000000000 +0000
+--- sendmail/Makefile.m4.orig  2023-02-09 18:24:38.000000000 +0000
 +++ sendmail/Makefile.m4
 @@ -4,9 +4,10 @@ include(confBUILDTOOLSDIR`/M4/switch.m4'
  define(`confREQUIRE_LIBSM', `true')
@@ -9,7 +9,7 @@ $NetBSD: patch-an,v 1.4 2021/07/04 07:57
 -define(`bldBIN_TYPE', `G')
 +dnl define(`bldBIN_TYPE', `G')
  define(`bldINSTALL_DIR', `')
- define(`bldSOURCES', `main.c alias.c arpadate.c bf.c collect.c conf.c control.c convtime.c daemon.c deliver.c domain.c envelope.c err.c headers.c macro.c map.c mci.c milter.c mime.c parseaddr.c 
queue.c ratectrl.c readcf.c recipient.c sasl.c savemail.c sfsasl.c shmticklib.c sm_resolve.c srvrsmtp.c stab.c stats.c sysexits.c timers.c tlsh.c tls.c trace.c udb.c usersmtp.c util.c version.c ')
+ define(`bldSOURCES', `main.c alias.c arpadate.c bf.c collect.c conf.c control.c convtime.c daemon.c deliver.c domain.c envelope.c err.c headers.c macro.c map.c mci.c milter.c mime.c parseaddr.c 
queue.c ratectrl.c readcf.c recipient.c sasl.c savemail.c sched.c sfsasl.c shmticklib.c sm_resolve.c srvrsmtp.c stab.c stats.c sysexits.c timers.c tlsh.c tls.c trace.c udb.c usersmtp.c util.c 
version.c ')
 +APPENDDEF(`bldSOURCES',`blacklist.c ')
  PREPENDDEF(`confENVDEF', `confMAPDEF')
  bldPUSH_SMLIB(`sm')

Index: pkgsrc/mail/sendmail/patches/patch-as
diff -u pkgsrc/mail/sendmail/patches/patch-as:1.2 pkgsrc/mail/sendmail/patches/patch-as:1.3
--- pkgsrc/mail/sendmail/patches/patch-as:1.2   Sun Jul  4 07:57:13 2021
+++ pkgsrc/mail/sendmail/patches/patch-as       Mon Jan 15 04:43:22 2024
@@ -1,8 +1,8 @@
-$NetBSD: patch-as,v 1.2 2021/07/04 07:57:13 jnemeth Exp $
+$NetBSD: patch-as,v 1.3 2024/01/15 04:43:22 jnemeth Exp $
 
---- sendmail/deliver.c.orig    2020-06-03 05:48:46.000000000 +0000
+--- sendmail/deliver.c.orig    2023-02-22 16:41:28.000000000 +0000
 +++ sendmail/deliver.c
-@@ -29,6 +29,10 @@ SM_RCSID("@(#)$Id: deliver.c,v 8.1030 20
+@@ -31,6 +31,10 @@ SM_RCSID("@(#)$Id: deliver.c,v 8.1030 20
  # include "tls.h"
  #endif
  
@@ -10,10 +10,10 @@ $NetBSD: patch-as,v 1.2 2021/07/04 07:57
 +extern struct __res_state sm_res;
 +#endif
 +
+ #if !_FFR_DMTRIGGER
  static int    deliver __P((ENVELOPE *, ADDRESS *));
- static void   dup_queue_file __P((ENVELOPE *, ENVELOPE *, int));
- static void   mailfiletimeout __P((int));
-@@ -1909,7 +1913,7 @@ deliver(e, firstto)
+ #endif
+@@ -2245,7 +2249,7 @@ deliver(e, firstto)
  
  #if NAMED_BIND
        if (ConfigLevel < 2)
@@ -22,7 +22,7 @@ $NetBSD: patch-as,v 1.2 2021/07/04 07:57
  #endif
  
        if (tTd(11, 1))
-@@ -3621,7 +3625,7 @@ do_transfer:
+@@ -4100,7 +4104,7 @@ do_transfer:
        }
  #if NAMED_BIND
        if (ConfigLevel < 2)
@@ -31,16 +31,16 @@ $NetBSD: patch-as,v 1.2 2021/07/04 07:57
  #endif
  
        if (tTd(62, 1))
-@@ -6017,7 +6021,7 @@ hostsignature(m, host, ad)
-       int hl;
+@@ -6618,7 +6622,7 @@ hostsignature(m, host, ad)
        char *hp;
        char *endp;
+       char *lstr;
 -      int oldoptions = _res.options;
 +      int oldoptions = sm_res.options;
        char *mxhosts[MAXMXHOSTS + 1];
        unsigned short mxprefs[MAXMXHOSTS + 1];
  #endif /* NAMED_BIND */
-@@ -6087,7 +6091,7 @@ hostsignature(m, host, ad)
+@@ -6688,7 +6692,7 @@ hostsignature(m, host, ad)
  
  #if NAMED_BIND
        if (ConfigLevel < 2)
@@ -49,9 +49,9 @@ $NetBSD: patch-as,v 1.2 2021/07/04 07:57
  
        for (hp = host; hp != NULL; hp = endp)
        {
-@@ -6220,7 +6224,7 @@ hostsignature(m, host, ad)
-       }
-       makelower(s->s_hostsig.hs_sig);
+@@ -6821,7 +6825,7 @@ hostsignature(m, host, ad)
+       lstr = makelower_a(&s->s_hostsig.hs_sig, NULL);
+       ASSIGN_IFDIFF(s->s_hostsig.hs_sig, lstr);
        if (ConfigLevel < 2)
 -              _res.options = oldoptions;
 +              sm_res.options = oldoptions;
Index: pkgsrc/mail/sendmail/patches/patch-at
diff -u pkgsrc/mail/sendmail/patches/patch-at:1.2 pkgsrc/mail/sendmail/patches/patch-at:1.3
--- pkgsrc/mail/sendmail/patches/patch-at:1.2   Sun Jul  4 07:57:13 2021
+++ pkgsrc/mail/sendmail/patches/patch-at       Mon Jan 15 04:43:22 2024
@@ -1,17 +1,16 @@
-$NetBSD: patch-at,v 1.2 2021/07/04 07:57:13 jnemeth Exp $
+$NetBSD: patch-at,v 1.3 2024/01/15 04:43:22 jnemeth Exp $
 
---- sendmail/domain.c.orig     2020-06-02 09:41:43.000000000 +0000
+--- sendmail/domain.c.orig     2023-05-31 19:55:42.000000000 +0000
 +++ sendmail/domain.c
-@@ -25,6 +25,8 @@ SM_RCSID("@(#)$Id: domain.c,v 8.205 2013
+@@ -23,6 +23,7 @@ SM_RCSID("@(#)$Id: domain.c,v 8.205 2013
+ #include <sm/sendmail.h>
  
  #if NAMED_BIND
- 
 +extern struct __res_state sm_res;
-+
  # include <arpa/inet.h>
- # include <sm_resolve.h>
+ # include "sm_resolve.h"
  # if DANE
-@@ -49,7 +51,7 @@ static char  MXHostBuf[MXHOSTBUFSIZE];
+@@ -51,7 +52,7 @@ static char  MXHostBuf[MXHOSTBUFSIZE];
  # endif
  
  # ifndef RES_DNSRCH_VARIABLE
@@ -19,8 +18,8 @@ $NetBSD: patch-at,v 1.2 2021/07/04 07:57
 +#  define RES_DNSRCH_VARIABLE sm_res.dnsrch
  # endif
  
- # ifndef NO_DATA
-@@ -573,9 +575,9 @@ getmxrr(host, mxhosts, mxprefs, flags, r
+ # ifndef HFIXEDSZ
+@@ -623,9 +624,9 @@ getmxrr(host, mxhosts, mxprefs, flags, r
  # if DANE
        cname2mx = false;
        qname[0] = '\0';
@@ -32,7 +31,7 @@ $NetBSD: patch-at,v 1.2 2021/07/04 07:57
  # endif
  
        if ((fallbackMX != NULL && (flags & DROPLOCALHOST) != 0 &&
-@@ -743,7 +745,7 @@ getmxrr(host, mxhosts, mxprefs, flags, r
+@@ -784,7 +785,7 @@ getmxrr(host, mxhosts, mxprefs, flags, r
  # endif
                if (type != T_MX)
                {
@@ -41,7 +40,7 @@ $NetBSD: patch-at,v 1.2 2021/07/04 07:57
  # if DANE
                            && type != T_RRSIG
  # endif
-@@ -1042,13 +1044,13 @@ punt:
+@@ -1102,13 +1103,13 @@ punt:
        }
      done:
  # if DANE
@@ -57,7 +56,7 @@ $NetBSD: patch-at,v 1.2 2021/07/04 07:57
  # endif
        return -1;
  }
-@@ -1118,7 +1120,7 @@ bestmx_map_lookup(map, name, av, statp)
+@@ -1178,7 +1179,7 @@ bestmx_map_lookup(map, name, av, statp)
        int *statp;
  {
        int nmx;
@@ -66,7 +65,7 @@ $NetBSD: patch-at,v 1.2 2021/07/04 07:57
        int i;
        ssize_t len = 0;
        char *result;
-@@ -1130,9 +1132,9 @@ bestmx_map_lookup(map, name, av, statp)
+@@ -1190,9 +1191,9 @@ bestmx_map_lookup(map, name, av, statp)
        char buf[PSBUFSIZE / 2];
  # endif
  
@@ -78,7 +77,7 @@ $NetBSD: patch-at,v 1.2 2021/07/04 07:57
        if (nmx <= 0)
                return NULL;
        if (bitset(MF_MATCHONLY, map->map_mflags))
-@@ -1282,16 +1284,22 @@ dns_getcanonname(host, hbsize, trymx, st
+@@ -1342,16 +1343,22 @@ dns_getcanonname(host, hbsize, trymx, st
        if (tTd(8, 2))
                sm_dprintf("dns_getcanonname(%s, trymx=%d)\n", host, trymx);
  
@@ -107,7 +106,7 @@ $NetBSD: patch-at,v 1.2 2021/07/04 07:57
  # endif
  
        *statp = EX_OK;
-@@ -1341,7 +1349,7 @@ cnameloop:
+@@ -1401,7 +1408,7 @@ cnameloop:
                searchlist[sli++] = NameSearchList;
        }
  # endif
@@ -116,7 +115,7 @@ $NetBSD: patch-at,v 1.2 2021/07/04 07:57
        {
                /* make sure there are less than MAXDNSRCH domains */
                for (domain = RES_DNSRCH_VARIABLE, ret = 0;
-@@ -1349,10 +1357,10 @@ cnameloop:
+@@ -1409,10 +1416,10 @@ cnameloop:
                     ret++)
                        searchlist[sli++] = *domain++;
        }
@@ -129,7 +128,7 @@ $NetBSD: patch-at,v 1.2 2021/07/04 07:57
        }
        else if (*cp == '.')
        {
-@@ -1658,13 +1666,13 @@ nexttype:
+@@ -1718,13 +1725,13 @@ nexttype:
        if (ttl > 0 && pttl != NULL)
                *pttl = ttl;
  # if DANE

Index: pkgsrc/mail/sendmail/patches/patch-aw
diff -u pkgsrc/mail/sendmail/patches/patch-aw:1.7 pkgsrc/mail/sendmail/patches/patch-aw:1.8
--- pkgsrc/mail/sendmail/patches/patch-aw:1.7   Sun Jul  4 07:57:13 2021
+++ pkgsrc/mail/sendmail/patches/patch-aw       Mon Jan 15 04:43:22 2024
@@ -1,6 +1,6 @@
-$NetBSD: patch-aw,v 1.7 2021/07/04 07:57:13 jnemeth Exp $
+$NetBSD: patch-aw,v 1.8 2024/01/15 04:43:22 jnemeth Exp $
 
---- sendmail/readcf.c.orig     2020-06-02 09:41:43.000000000 +0000
+--- sendmail/readcf.c.orig     2023-04-27 10:39:42.000000000 +0000
 +++ sendmail/readcf.c
 @@ -26,6 +26,10 @@ SM_RCSID("@(#)$Id: readcf.c,v 8.692 2013
  # include <arpa/inet.h>
@@ -13,16 +13,17 @@ $NetBSD: patch-aw,v 1.7 2021/07/04 07:57
  
  #define SECONDS
  #define MINUTES       * 60
-@@ -2979,6 +2983,8 @@ static struct optioninfo
-       { "SetCertAltnames",                    O_CHECKALTNAMES, OI_NONE },
+@@ -3210,6 +3214,9 @@ static struct optioninfo
+       { "CipherSuites",               O_CIPHERSUITES, OI_NONE },
  #endif
  
-+# define O_BLACKLIST   0xf8
++# define O_BLACKLIST  0xfb
 +      { "UseBlacklist",               O_BLACKLIST,    OI_NONE },
++
        { NULL,                         '\0',           OI_NONE }
  };
  
-@@ -3386,13 +3392,13 @@ setoption(opt, val, safe, sticky, e)
+@@ -3620,13 +3627,13 @@ setoption(opt, val, safe, sticky, e)
                        if (rfp->rf_name == NULL)
                                syserr("readcf: I option value %s unrecognized", q);
                        else if (clearmode)
@@ -40,9 +41,9 @@ $NetBSD: patch-aw,v 1.7 2021/07/04 07:57
  #else /* NAMED_BIND */
                usrerr("name server (I option) specified but BIND not compiled in");
  #endif /* NAMED_BIND */
-@@ -4679,6 +4685,10 @@ setoption(opt, val, safe, sticky, e)
+@@ -4949,6 +4956,10 @@ setoption(opt, val, safe, sticky, e)
                break;
- # endif
+ #endif
  
 +        case O_BLACKLIST:
 +              UseBlacklist = atobool(val);

Index: pkgsrc/mail/sendmail/patches/patch-ay
diff -u pkgsrc/mail/sendmail/patches/patch-ay:1.3 pkgsrc/mail/sendmail/patches/patch-ay:1.4
--- pkgsrc/mail/sendmail/patches/patch-ay:1.3   Sun Jul  4 07:57:13 2021
+++ pkgsrc/mail/sendmail/patches/patch-ay       Mon Jan 15 04:43:22 2024
@@ -1,41 +1,24 @@
-$NetBSD: patch-ay,v 1.3 2021/07/04 07:57:13 jnemeth Exp $
+$NetBSD: patch-ay,v 1.4 2024/01/15 04:43:22 jnemeth Exp $
 
---- sendmail/sm_resolve.c.orig 2020-06-08 08:35:03.000000000 +0000
+--- sendmail/sm_resolve.c.orig 2023-02-09 18:24:38.000000000 +0000
 +++ sendmail/sm_resolve.c
-@@ -57,2 +57,6 @@ SM_RCSID("$Id: sm_resolve.c,v 8.40 2013-
+@@ -61,2 +61,6 @@ SM_RCSID("$Id: sm_resolve.c,v 8.40 2013-
  
 +#if NAMED_BIND
 +extern struct __res_state sm_res;
 +#endif
 +
  static struct stot
-@@ -771,3 +775,3 @@ nsportip(p)
-       {
--              if ((_res.options & RES_INIT) == 0)
-+              if ((sm_res.options & RES_INIT) == 0)
-                       (void) res_init();
-@@ -796,7 +800,7 @@ dns_setns(ns, port)
- {
--      _res.nsaddr_list[0].sin_family = AF_INET;
--      _res.nsaddr_list[0].sin_addr = *ns;
-+      sm_res.nsaddr_list[0].sin_family = AF_INET;
-+      sm_res.nsaddr_list[0].sin_addr = *ns;
-       if (port != 0)
--              _res.nsaddr_list[0].sin_port = htons(port);
--      _res.nscount = 1;
-+              sm_res.nsaddr_list[0].sin_port = htons(port);
-+      sm_res.nscount = 1;
-       if (tTd(8, 61))
-@@ -945,3 +949,3 @@ dnscrtrr(domain, query, qtype, value, rr
+@@ -879,3 +883,3 @@ dnscrtrr(domain, query, qtype, value, rr
  
 -                      adflag = (_res.options & RES_USE_DNSSEC) != 0;
 +                      adflag = (sm_res.options & RES_USE_DNSSEC) != 0;
  
-@@ -1289,3 +1293,2 @@ dns_lookup_int(domain, rr_class, rr_type
+@@ -1239,3 +1243,2 @@ dns_lookup_int(domain, rr_class, rr_type
        unsigned char *reply;
 -      int (*resfunc) __P((const char *, int, int, u_char *, int));
  
-@@ -1296,10 +1299,4 @@ dns_lookup_int(domain, rr_class, rr_type
+@@ -1246,10 +1249,4 @@ dns_lookup_int(domain, rr_class, rr_type
  
 -      resfunc = res_search;
 -#  if DNSSEC_TEST
@@ -48,33 +31,33 @@ $NetBSD: patch-ay,v 1.3 2021/07/04 07:57
 +      old_options = sm_res.options;
 +      sm_res.options |= options;
        if (err != NULL)
-@@ -1310,3 +1307,3 @@ dns_lookup_int(domain, rr_class, rr_type
+@@ -1260,3 +1257,3 @@ dns_lookup_int(domain, rr_class, rr_type
        {
 -              _res.options |= RES_DEBUG;
 +              sm_res.options |= RES_DEBUG;
                sm_dprintf("dns_lookup_int(%s, %d, %s, %x)\n", domain,
-@@ -1317,4 +1314,4 @@ dns_lookup_int(domain, rr_class, rr_type
+@@ -1267,4 +1264,4 @@ dns_lookup_int(domain, rr_class, rr_type
                sm_dprintf("NS=%s, port=%d\n",
 -                      inet_ntoa(_res.nsaddr_list[0].sin_addr),
 -                      ntohs(_res.nsaddr_list[0].sin_port));
 +                      inet_ntoa(sm_res.nsaddr_list[0].sin_addr),
 +                      ntohs(sm_res.nsaddr_list[0].sin_port));
  #  endif
-@@ -1322,4 +1319,4 @@ dns_lookup_int(domain, rr_class, rr_type
+@@ -1272,4 +1269,4 @@ dns_lookup_int(domain, rr_class, rr_type
        {
 -              save_retrans = _res.retrans;
 -              _res.retrans = retrans;
 +              save_retrans = sm_res.retrans;
 +              sm_res.retrans = retrans;
        }
-@@ -1327,4 +1324,4 @@ dns_lookup_int(domain, rr_class, rr_type
+@@ -1277,4 +1274,4 @@ dns_lookup_int(domain, rr_class, rr_type
        {
 -              save_retry = _res.retry;
 -              _res.retry = retry;
 +              save_retry = sm_res.retry;
 +              sm_res.retry = retry;
        }
-@@ -1333,3 +1330,12 @@ dns_lookup_int(domain, rr_class, rr_type
+@@ -1283,3 +1280,12 @@ dns_lookup_int(domain, rr_class, rr_type
        reply = (unsigned char *)&reply_buf;
 -      len = (*resfunc)(domain, rr_class, rr_type, reply, SMRBSIZE);
 +#  if DNSSEC_TEST
@@ -88,7 +71,7 @@ $NetBSD: patch-ay,v 1.3 2021/07/04 07:57
 +      len = res_search(domain, rr_class, rr_type, reply, SMRBSIZE);
 +#  endif
        if (len >= SMRBSIZE)
-@@ -1353,4 +1359,15 @@ dns_lookup_int(domain, rr_class, rr_type
+@@ -1303,4 +1309,15 @@ dns_lookup_int(domain, rr_class, rr_type
                                SM_SET_H_ERRNO(0);
 -                              len = (*resfunc)(domain, rr_class, rr_type,
 -                                               reply, IP_MAXPACKET);
@@ -106,12 +89,12 @@ $NetBSD: patch-ay,v 1.3 2021/07/04 07:57
 +                                  reply, IP_MAXPACKET);
 +#  endif
                        }
-@@ -1358,3 +1375,3 @@ dns_lookup_int(domain, rr_class, rr_type
+@@ -1308,3 +1325,3 @@ dns_lookup_int(domain, rr_class, rr_type
        }
 -      _res.options = old_options;
 +      sm_res.options = old_options;
        if (len < 0)
-@@ -1394,5 +1411,5 @@ dns_lookup_int(domain, rr_class, rr_type
+@@ -1344,5 +1361,5 @@ dns_lookup_int(domain, rr_class, rr_type
        if (retrans > 0)
 -              _res.retrans = save_retrans;
 +              sm_res.retrans = save_retrans;
@@ -119,3 +102,20 @@ $NetBSD: patch-ay,v 1.3 2021/07/04 07:57
 -              _res.retry = save_retry;
 +              sm_res.retry = save_retry;
        return dr;
+@@ -1578,7 +1595,7 @@ dns_addns(ns, port)
+               syserr("too many NameServers defined (%d max)", MAXNS);
+-      _res.nsaddr_list[nsidx].sin_family = AF_INET;
+-      _res.nsaddr_list[nsidx].sin_addr = *ns;
++      sm_res.nsaddr_list[nsidx].sin_family = AF_INET;
++      sm_res.nsaddr_list[nsidx].sin_addr = *ns;
+       if (port != 0)
+-              _res.nsaddr_list[nsidx].sin_port = htons(port);
+-      _res.nscount = ++nsidx;
++              sm_res.nsaddr_list[nsidx].sin_port = htons(port);
++      sm_res.nscount = ++nsidx;
+       if (tTd(8, 61))
+@@ -1639,3 +1656,3 @@ nsportip(p)
+       {
+-              if ((_res.options & RES_INIT) == 0)
++              if ((sm_res.options & RES_INIT) == 0)
+                       (void) res_init();

Index: pkgsrc/mail/sendmail/patches/patch-bl
diff -u pkgsrc/mail/sendmail/patches/patch-bl:1.1 pkgsrc/mail/sendmail/patches/patch-bl:1.2
--- pkgsrc/mail/sendmail/patches/patch-bl:1.1   Mon Jul 15 04:32:49 2019
+++ pkgsrc/mail/sendmail/patches/patch-bl       Mon Jan 15 04:43:22 2024
@@ -1,4 +1,4 @@
-# $NetBSD: patch-bl,v 1.1 2019/07/15 04:32:49 jnemeth Exp $
+$NetBSD: patch-bl,v 1.2 2024/01/15 04:43:22 jnemeth Exp $
 
 --- sendmail/blacklist.c.orig  2018-01-02 20:16:44 UTC
 +++ sendmail/blacklist.c
Index: pkgsrc/mail/sendmail/patches/patch-bm
diff -u pkgsrc/mail/sendmail/patches/patch-bm:1.1 pkgsrc/mail/sendmail/patches/patch-bm:1.2
--- pkgsrc/mail/sendmail/patches/patch-bm:1.1   Mon Jul 15 04:32:49 2019
+++ pkgsrc/mail/sendmail/patches/patch-bm       Mon Jan 15 04:43:22 2024
@@ -1,4 +1,4 @@
-# $Id: patch-bm,v 1.1 2019/07/15 04:32:49 jnemeth Exp $
+$NetBSD: patch-bm,v 1.2 2024/01/15 04:43:22 jnemeth Exp $
 
 --- sendmail/blacklist_client.h.orig   2018-01-02 20:16:44 UTC
 +++ sendmail/blacklist_client.h
Index: pkgsrc/mail/sendmail/patches/patch-bn
diff -u pkgsrc/mail/sendmail/patches/patch-bn:1.1 pkgsrc/mail/sendmail/patches/patch-bn:1.2
--- pkgsrc/mail/sendmail/patches/patch-bn:1.1   Mon Jul 15 04:32:49 2019
+++ pkgsrc/mail/sendmail/patches/patch-bn       Mon Jan 15 04:43:22 2024
@@ -1,16 +1,16 @@
-$NetBSD: patch-bn,v 1.1 2019/07/15 04:32:49 jnemeth Exp $
+$NetBSD: patch-bn,v 1.2 2024/01/15 04:43:22 jnemeth Exp $
 
---- sendmail/sendmail.8.orig   2014-06-13 14:57:59.000000000 +0000
+--- sendmail/sendmail.8.orig   2023-02-09 18:24:38.000000000 +0000
 +++ sendmail/sendmail.8
-@@ -537,6 +537,11 @@ for this amount of time, 
- failed messages will be returned to the sender.  
+@@ -552,6 +552,11 @@ for this amount of time,
+ failed messages will be returned to the sender.
  The default is five days.
  .TP
-+UseBlacklist
++.RI UseBlacklist
 +If set, send authentication failure and success notifications to the
 +.BR blacklistd (8)
 +daemon.
 +.TP
  .RI UserDatabaseSpec= userdatabase
  If set, a user database is consulted to get forwarding information.
- You can consider this an adjunct to the aliasing mechanism, 
+ You can consider this an adjunct to the aliasing mechanism,
Index: pkgsrc/mail/sendmail/patches/patch-bs
diff -u pkgsrc/mail/sendmail/patches/patch-bs:1.1 pkgsrc/mail/sendmail/patches/patch-bs:1.2
--- pkgsrc/mail/sendmail/patches/patch-bs:1.1   Sun Jul  4 07:57:13 2021
+++ pkgsrc/mail/sendmail/patches/patch-bs       Mon Jan 15 04:43:22 2024
@@ -1,10 +1,10 @@
-$NetBSD: patch-bs,v 1.1 2021/07/04 07:57:13 jnemeth Exp $
+$NetBSD: patch-bs,v 1.2 2024/01/15 04:43:22 jnemeth Exp $
 
---- libsm/notify.c.orig        2020-05-19 19:54:32.000000000 +0000
+--- libsm/notify.c.orig        2023-02-09 18:24:38.000000000 +0000
 +++ libsm/notify.c
-@@ -15,6 +15,7 @@
- #include <sm/assert.h>
- #include <sm/notify.h>
+@@ -19,6 +19,7 @@
+ #include <sm/time.h>
+ #include <sm/string.h>
  
 +#include <sys/select.h>
  #include <sys/types.h>

Index: pkgsrc/mail/sendmail/patches/patch-bo
diff -u pkgsrc/mail/sendmail/patches/patch-bo:1.5 pkgsrc/mail/sendmail/patches/patch-bo:1.6
--- pkgsrc/mail/sendmail/patches/patch-bo:1.5   Tue May 10 13:46:49 2022
+++ pkgsrc/mail/sendmail/patches/patch-bo       Mon Jan 15 04:43:22 2024
@@ -1,12 +1,8 @@
-$NetBSD: patch-bo,v 1.5 2022/05/10 13:46:49 sborrill Exp $
+$NetBSD: patch-bo,v 1.6 2024/01/15 04:43:22 jnemeth Exp $
 
-Add blacklist support.
-Pull up SMTP AUTH fix from 8.17.1.9 as per:
-       https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=262935
-
---- sendmail/sendmail.h.orig   2020-07-02 05:00:37.000000000 +0000
-+++ sendmail/sendmail.h        2022-05-10 09:51:29.162720330 +0000
-@@ -63,6 +63,10 @@
+--- sendmail/sendmail.h.orig   2023-04-27 10:39:42.000000000 +0000
++++ sendmail/sendmail.h
+@@ -73,6 +73,10 @@ SM_UNUSED(static char SmailId[]) = "@(#)
  #endif
  
  #include "bf.h"
@@ -16,17 +12,8 @@ Pull up SMTP AUTH fix from 8.17.1.9 as p
 +#include "blacklist_client.h"
  #include "timers.h"
  #include <sm/exc.h>
- #include <sm/heap.h>
-@@ -706,7 +710,7 @@
- # define SASL_IS_AUTH 2               /* authenticated */
- 
- /* SASL options */
--# define SASL_AUTH_AUTH       0x1000          /* use auth= only if authenticated */
-+# define SASL_AUTH_AUTH       0x10000         /* use auth= only if authenticated */
- # if SASL >= 20101
- #  define SASL_SEC_MASK       SASL_SEC_MAXIMUM /* mask for SASL_SEC_* values: sasl.h */
- # else /* SASL >= 20101 */
-@@ -2576,6 +2580,8 @@
+ #include <sm/gen.h>
+@@ -2708,6 +2712,8 @@ EXTERN int Hacks;        /* bit field of run-ti
  
  EXTERN int ConnectionRateWindowSize;
  

Added files:

Index: pkgsrc/mail/sendmail/files/site.config.m4-smtputf8
diff -u /dev/null pkgsrc/mail/sendmail/files/site.config.m4-smtputf8:1.1
--- /dev/null   Mon Jan 15 04:43:23 2024
+++ pkgsrc/mail/sendmail/files/site.config.m4-smtputf8  Mon Jan 15 04:43:22 2024
@@ -0,0 +1,6 @@
+
+# $NetBSD: site.config.m4-smtputf8,v 1.1 2024/01/15 04:43:22 jnemeth Exp $
+
+# enable SMTPUTF8
+APPENDDEF(`confENVDEF',`-DUSE_EAI')
+APPENDDEF(`confLIBS', `-licuuc')

Index: pkgsrc/mail/sendmail/patches/patch-bt
diff -u /dev/null pkgsrc/mail/sendmail/patches/patch-bt:1.1
--- /dev/null   Mon Jan 15 04:43:23 2024
+++ pkgsrc/mail/sendmail/patches/patch-bt       Mon Jan 15 04:43:22 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-bt,v 1.1 2024/01/15 04:43:22 jnemeth Exp $
+
+--- devtools/bin/configure.sh.orig     2024-01-08 07:00:05.372673095 +0000
++++ devtools/bin/configure.sh
+@@ -167,7 +167,7 @@ then
+       echo "define(\`confRANLIB', \`ranlib')dnl"
+ fi
+ 
+-roff_progs="groff nroff mandoc"
++roff_progs="mandoc groff nroff"
+ for roff_prog in $roff_progs
+ do
+       if [ ! -z "`$SHELL $find_prog $roff_prog`" ]



Home | Main Index | Thread Index | Old Index