Re: git: a67b925ff3e5 - main - mail: make The Dragonfly Mail Agent (dma) the default mta.
Date: Mon, 07 Nov 2022 12:28:09 UTC
On 07/11/22 08:50, Baptiste Daroussin wrote:
> The branch main has been updated by bapt:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=a67b925ff3e58b072a60b633e442ee1d33e47f7f
>
> commit a67b925ff3e58b072a60b633e442ee1d33e47f7f
> Author: Baptiste Daroussin <bapt@FreeBSD.org>
> AuthorDate: 2022-10-13 09:37:21 +0000
> Commit: Baptiste Daroussin <bapt@FreeBSD.org>
> CommitDate: 2022-11-07 11:49:56 +0000
>
> mail: make The Dragonfly Mail Agent (dma) the default mta.
>
> dma accepts mail from a local Mail User Agent (MUA) and delivers it
> locally or to a smarthost for delivery. dma does not accept inbound
> mail (i.e., it does not listen on port 25) and is not intended to
> provide the same functionality as a full MTA like postfix or sendmail.
> It is intended for use cases such as delivering cron(8) mail. which
> is the default configuration and usage of sendmail in the default
> setup of the base system.
>
> In order to switch the default from sendmail to dma, we teach
> mailwrapper to fallback on dma directly if the mailer.conf file cannot
> be opened.
> We install by default a mailer.conf file which points at dma
> We install a mailer.conf file for sendmail in the examples.
>
> Relnotes: yes
> Differential Revision: https://reviews.freebsd.org/D37035
> ---
> libexec/dma/dmagent/Makefile | 5 -----
> libexec/rc/rc.conf | 2 +-
> usr.sbin/mailwrapper/Makefile | 19 +++++++++++++------
> usr.sbin/mailwrapper/pathnames.h | 2 +-
> 4 files changed, 15 insertions(+), 13 deletions(-)
>
> diff --git a/libexec/dma/dmagent/Makefile b/libexec/dma/dmagent/Makefile
> index f7f127cf4e7e..9c440b32e50f 100644
> --- a/libexec/dma/dmagent/Makefile
> +++ b/libexec/dma/dmagent/Makefile
> @@ -24,11 +24,6 @@ YFLAGS+= -i
> CLEANFILES= aliases_parse.i
> FILES= mailer.conf
> FILESDIR= ${SHAREDIR}/examples/dma
> -.if ${MK_SENDMAIL} == no
> -CONFGROUPS= CONFS MAILER
> -MAILERDIR= /etc/mail
> -MAILER= mailer.conf
> -.endif
>
> BINMODE= 2555
>
> diff --git a/libexec/rc/rc.conf b/libexec/rc/rc.conf
> index a71a3fa4063d..91b99780eae6 100644
> --- a/libexec/rc/rc.conf
> +++ b/libexec/rc/rc.conf
> @@ -596,7 +596,7 @@ allscreens_kbdflags="" # Set this kbdcontrol mode for all virtual screens
> mta_start_script="/etc/rc.sendmail"
> # Script to start your chosen MTA, called by /etc/rc.
> # Settings for /etc/rc.sendmail and /etc/rc.d/sendmail:
> -sendmail_enable="NO" # Run the sendmail inbound daemon (YES/NO).
> +sendmail_enable="NONE" # Run the sendmail inbound daemon (YES/NO).
> sendmail_pidfile="/var/run/sendmail.pid" # sendmail pid file
> sendmail_procname="/usr/sbin/sendmail" # sendmail process name
> sendmail_flags="-L sm-mta -bd -q30m" # Flags to sendmail (as a server)
> diff --git a/usr.sbin/mailwrapper/Makefile b/usr.sbin/mailwrapper/Makefile
> index 3e5c46d7bdf4..0878a2f8c483 100644
> --- a/usr.sbin/mailwrapper/Makefile
> +++ b/usr.sbin/mailwrapper/Makefile
> @@ -16,10 +16,10 @@ SYMLINKS= ../sbin/mailwrapper /usr/bin/mailq \
> mailwrapper /usr/sbin/purgestat \
> mailwrapper /usr/sbin/sendmail
>
> -.if ${MK_MAILWRAPPER} == "no" && ${MK_SENDMAIL} != "no"
> -SYMLINKS+= ../libexec/sendmail/sendmail ${BINDIR}/mailwrapper
> -.elif ${MK_MAILWRAPPER} == "no" && ${MK_SENDMAIL} == "no" && ${MK_DMAGENT} != "no"
> +.if ${MK_MAILWRAPPER} == "no" && ${MK_DMAGENT} != "no"
> SYMLINKS+= ../libexec/dma ${BINDIR}/mailwrapper
> +.elif ${MK_MAILWRAPPER} == "no" && ${MK_DMAGENT} == "no" && ${MK_SENDMAIL} != "no"
> +SYMLINKS+= ../libexec/sendmail/sendmail ${BINDIR}/mailwrapper
> .endif
> .endif
>
> @@ -27,16 +27,23 @@ SYMLINKS+= ../libexec/dma ${BINDIR}/mailwrapper
> SYMLINKS+= ..${BINDIR}/mailwrapper /bin/rmail
> .endif
>
> +.if ${MK_SENDMAIL} != "no"
> +FILES= ${SRCTOP}/etc/mail/mailer.conf
> +FILESDIR= ${SHAREDIR}/examples/sendmail
> +.endif
> +
> .if ${MK_MAILWRAPPER} != "no"
> -# We install here if either sendmail(8) is enabled, or dma(8) isn't. In the
> +# We install here if either dma(8) is enabled, or sendmail(8) isn't. In the
> # latter scenario, we take care of the possibility that neither sendmail(8) nor
> # dma(8) are installed and simply provide a default that can be changed for an
> # alternative in ports.
> -.if ${MK_SENDMAIL} != "no" || ${MK_DMAGENT} == "no"
> +.if ${MK_DMAGENT} != "no" || ${MK_SENDMAIL} == "no"
> +CONFS= ${SRCTOP}/libexec/dma/dmagent/mailer.conf
> +.else
> CONFS= ${SRCTOP}/etc/mail/mailer.conf
> +.endif
> CONFSDIR= /etc/mail
> CONFSMODE= 644
> .endif
> -.endif
>
> .include <bsd.prog.mk>
> diff --git a/usr.sbin/mailwrapper/pathnames.h b/usr.sbin/mailwrapper/pathnames.h
> index 5511d1eccff9..798648269f3e 100644
> --- a/usr.sbin/mailwrapper/pathnames.h
> +++ b/usr.sbin/mailwrapper/pathnames.h
> @@ -34,4 +34,4 @@
> */
>
> #define _PATH_MAILERCONF "/etc/mail/mailer.conf"
> -#define _PATH_DEFAULTMTA "/usr/libexec/sendmail/sendmail"
> +#define _PATH_DEFAULTMTA "/usr/libexec/dma"
>
>
Thank you!
--
Renato Botelho