This reverts the .forward commit. I committed the code to early, there are some
bugs inside (queue handling broken and some security issues). I back this out
until we have more time to fix all the issues or rewrite some parts from scratch.
This brings dma back in a fully working state, only the .forward stuff is gone.
Tested-by: Daniel Roethlisberger <daniel@roe.ch> and me
Ok-to-back-out: corecode@
Commit the remainder of Max's dma work (with minor modifications).
See Max mail on kernel@ [1] for further details.
* Support of .forward files (Note: dma is now setuid root)
* Send multiple mails at once
* Fix some style(9) issues (mostly return())
Some style(9) issues are still in the code. I take care if I have some
spare time :) Please test!
Submitted-by: Max Lindner <gisanka@gmail.com> Sponsored-by: Google Summer of Code 2008
[1] http://leaf.dragonflybsd.org/mailarchive/kernel/2008-08/msg00045.html
Add CRAM-MD5 authentication support for the DragonFly Mail Agent. This is the
first piece of Max's work for the Google Summer of Code 2008. All other
new features will follow after evaluation/review :)
Besides the CRAM code there is new code within base64.c (BSD licensed and
from the University of Stockholm) and within crypto.c derived from RFC 2104.
Note: This code is tested and works. If you find a bug, please report back
to the bugs@ list.
Thanks a lot for the good work Max.
Submitted-by: Max Lindner <gisanka@googlemail.com> Sponsored-by: Google Summer of Code 2008
o Rename TLSINIT to NOSSL
o Rename read_remote_command to read_remote. Replace the remote read method
with code from femail.c written by Henning Brauer of OpenBSD and licensed
under a BSD license. Return the first figure of the return code and check
the appropriate values.
o Read the server greeting at first and send EHLO afterwards.
o Remove check_for_smtp_error(). It is included in read_remote().
This commit fixes some of the issues in issue953. More code to come.
Add a new config option to dma(8). If a user wants to use plain text SMTP
login over an insecure connection, he has to set the INSECURE option in
the config file. Otherwise plain text login is only available over encrypted
connections.
dma 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 authen-
tication (AUTH LOGIN only).
dma is not intended as a replacement for real, big MTAs like sendmail(8)
or postfix(8). Consequently, dma does not listen on port 25 for incoming
connections.
Current list of features:
- Local mail delivery with alias-support
- Remote mail delivery either direct or via a smarthost
- TLS/SSL and STARTTLS support for encrypted connections
- virtualusers (address rewriting) support
- SMTP authentication (currently only plain SMTP login)
- Sendmail compatible command line options
- IPv6 support