The DragonFly Mail Agent is a small Mail Transport Agent (MTA),
designed for home and office use. It accepts e-mail messages
from locally installed Mail User Agents (MUA) and delivers the
messages either locally or to a remote destination. Remote
delivery includes several features like TLS/SSL support and
SMTP authentication, but not MX record lookups. Therefore,
dma is currently not suitable for direct remote delivery.
However, it works very well for handling local mail plus
secure mail submission to a remote smarthost (e.g. for
travelling mobile computers).
Since dma is not intended as a replacement for real, big MTAs
like sendmail(8) or postfix(1), it does not listen on port 25
for incoming connections.
Please note that dma is now also available in FreeBSD's base, currently under
/usr/libexec/dma, and with config files in /etc/mail/dma.
These may not track the same version of dma. Users are encouraged to check
releases notes to see which best suits their needs.
===
To enable dma please edit /etc/mail/mailer.conf to replace all lines
referring to another MTA with the following:
sendmail /usr/local/libexec/dma
send-mail /usr/local/libexec/dma
mailq /usr/local/libexec/dma
If you do not need sendmail anymore, please add in your rc.conf:
sendmail_enable="NONE"
or, for more granular control:
sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
if you want anything in your queue to be flushed at on boot or before
shutdown, add the following to rc.conf as well:
dma_flushq_enable="YES"
A crontab configuration to flush every 30 minutes was added to
/usr/local/etc/cron.d/dma.
And you can disable some sendmail specific daily maintenance routines in your
/etc/periodic.conf file:
daily_clean_hoststat_enable="NO"
daily_status_mail_rejects_enable="NO"
daily_status_include_submit_mailq="NO"
daily_submit_queuerun="NO"
Mk/bsd.port.mk: Add __MAKE_CONF=${NONEXISTENT} to WRK_ENV
And remove it from individual ports. Use WRK_ENV in custom build
commands where necessary.
FreeBSD make(1) includes /usr/share/mk/sys.mk and that includes
/etc/make.conf if it exists. This happens when you run make in a port
directory but it also happens when the upstream build system uses make.
This commit disables make.conf inclusion in the latter case because
users can define variables like CFLAGS in make.conf that override ports
framework variables and this can cause problems that are difficult to
diagnose.
If there are any build customisations made through make.conf that stop
working because of this commit then they should be made available by the
(Only the first 15 lines of the commit message are shown above )
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
mail: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* <ashish@FreeBSD.org>
* Aaron Dalton <aaron@FreeBSD.org>
* Adam David <adam@FreeBSD.org>
* Adam McDougall <mcdouga9@egr.msu.edu>
* Adam Weinberger <adamw@FreeBSD.org>
* Ade Lovett <ade@FreeBSD.org>
* Akinori MUSHA aka knu <knu@idaemons.org>
* Alex Deiter <tiamat@komi.mts.ru>
* Alex Dupre <ale@FreeBSD.org>
* Alex Dupre <sysadmin@alexdupre.com>
* Alex Perel <veers@disturbed.net>
(Only the first 15 lines of the commit message are shown above )
mail/dma: Fix cronjob install location
- Install the cronjob file in the correct location, so it is
automatically picked up by cron
- While here, use ETCDIR expansion in plist in place of static path
where appropriate
PR: 262294
Approved by: garga (maintainer)
Fixes: f3c2313c5893 mail/dma: Implement cronjob to flush emails
mail/dma: Implement cronjob to flush emails
Add a new cronjob to flush emails every 30 minutes and change
pkg-message to let users know about it.
PR: 261532
Sponsored by: Rubicon Communications, LLC ("Netgate")
mail/dma: update to 0.13.20210614
- Upstream does not make releases very often while significant bugfixes
are committed now and than. Last release was Feb 2020.
- Upgrade the port to the same version as is included in DragonflyBSD:
https://lists.dragonflybsd.org/pipermail/commits/2021-May/820180.html
- This versioning scheme is flexible enough to follow 0.14 in the future
might that release ever happen.
- Remove now obsoleted patch-crypto.c
PR: 256597
Sponsored by: Rubicon Communications, LLC ("Netgate")
mail/dma: Fix build and improve pkg-message
- Replace deprecated NO_WERROR by MK_WERROR=no
- Tweak pkg-message to mention that dma is also in base [1]
PR: 252045 [1]
Submitted by: Dan Mahoney <freebsd@gushi.org>
Sponsored by: Rubicon Communications, LLC ("Netgate")
Fix build with src r354909 applied.
The referenced change made NO_INSTALLLIB, NO_MAN, and NO_PROFILE into
errors causing these ports that declare them and use the FreeBSD make
infrastructure as part of their build to fail.
When the offending variables occur in a BSD Makefile, NO_MAN becomes
MAN= and NO_INSTALLLIB and NO_PROFILE become MK_INSTALLLIB=no and
MK_PROFILE=no respectively. When declared in the environment they
become WITHOUT_<FOO>.
Remove compatibility code for FreeBSD < 11.2 from all ports.
Simplify some ports where DragonFlyBSD no longer needs to be special-cased.
Submitted by: rene
Reviewed by: bapt, jbeich
Differential Revision: https://reviews.freebsd.org/D17724
Incorporate a patch from upstream
Affecting DragonFly 4.6 and earlier, Matt Dillon fixed this in base after
finding out from BSDNow Episode 152. Comments following were from his commit
which explains better than I. Just taking his change and putting it here as
well.
* dma makes an age-old mistake of not properly checking whether a file
owned by a user is a symlink or not, a bug which the original mail.local
also had.
* Add O_NOFOLLOW to disallow symlinks.
Thanks-to: BSDNow Episode 152, made me dive dma to check when they talked
about the mail.local bug.
Change INSTALL_DATA to install with mode 644
Remove patches and hacks that were used to work around the previous
situation
This allows to stage more ports as a regular user
Differential Revision: https://reviews.freebsd.org/D703
Reviewed by and discussed with: bapt
With hat: portmgr
Fix a couple of issues:
- Make compile with old and new openssl
- Do not try to call git to get the version number
- Fix compile on FreeBSD 8.1
- Change maintainer email address
PR: ports/165775
Submitted by: bz
Update dma to 0.7
Also build and install the dma-mbox-create tool, which sets permissions and
uid/gid on /var/mail files as needed by dma.
Changes:
Adds maasquerading support
PR: ports/165697
Submitted by: bz
In the rc.d scripts, change assignments to rcvar to use the
literal name_enable wherever possible, and ${name}_enable
when it's not, to prepare for the demise of set_rcvar().
In cases where I had to hand-edit unusual instances also
modify formatting slightly to be more uniform (and in
some cases, correct). This includes adding some $FreeBSD$
tags, and most importantly moving rcvar= to right after
name= so it's clear that one is derived from the other.
- Update port to latest developer version
- Remove now useless patch-spool.c
- add patch-mail.c to fix compilation on 8.1 i386
Note that the dragonflybsd version and gitorious versions are different and the
virtuser file is gone in favour of env MAIL variable.
PR: ports/151408
Submitted by: bz@
- Fix a race condition in the multiple recipient delivery code which can cause
message corruption
PR: 136304
Submitted by: Daniel Roethlisberger <daniel@roe.ch> (maintainer)
- Fix the dma.rb wrapper for sendmail -t support to not require
oniguruma support in ruby by removing the zero-width positive
lookbehind assertion.
PR: ports/131641
Submitted by: Daniel Roethlisberger <daniel@roe.ch> (maintainer)
The DragonFly Mail Agent is a small Mail Transport Agent (MTA),
designed for home and office use. It accepts mails from locally
installed Mail User Agents (MUA) and delivers the mails either
locally or to a remote destination. Remote delivery includes
several features like TLS/SSL support and SMTP authentication.
Since dma is not intended as a replacement for real, big MTAs
like sendmail(8) or postfix(1), it does not listen on port 25
for incoming connections.
PR: ports/130658
Submitted by: Daniel Roethlisberger <daniel@roe.ch>