I am sponsoring this fast-track for Ceri Davies. As indicated below,
the interfaces are a combination of Committed and Project Private and
the requested release binding is Minor. Because it is already late on
Tuesday, I am setting the timer for a week from tomorrow: 2008-Dec-17.
---
* Problem
The programmatic interface to sendmail involves exec'ing a program
named /usr/lib/sendmail (or, outside Solaris, /usr/sbin/sendmail).
Administrators wishing to use an alternate MTA have to replace that
binary, which generally doesn't play all that well with packaging
and upgrade (sendmail isn't an editable file; multiple packages
delivering the same file is considered a no-no, etc.,).
* Solution
The common BSD distributions (FreeBSD, NetBSD, OpenBSD) include a
program called "mailwrapper" which allows for easy, packaging-safe
selection of the shell-command level interface to the default system
MTA. /usr/sbin/sendmail is a symlink to the mailwrapper binary, and
the "real" sendmail is installed somewhere else (on the *BSDs,
this is /usr/libexec/sendmail/sendmail).
A default mailer.conf is delivered so that mailwrapper exec's
through to the real sendmail binary; an admin wishing to select
an alternate MTA will install it wherever they like (/opt, /usr/pkg,
etc.) and then edit the mailer.conf file as appropriate for the
new MTA.
* Interface changes
Exported Interfaces Stability Comments
------------------- --------- --------
/etc/mail/mailer.conf Committed Configuration file
/usr/sbin/mailwrapper Committed Executable
/usr/lib/sendmail-mta Project Private Private executable files
* Man page changes
* New mailer.conf(4) manpage.
* New mailwrapper(1M) manpage.
* sendmail(1M), mailq(1) and newaliases(1M) updated to refer to the
above.
Old, new and diffs in case materials directory.
* Release binding
Delivering via a patch may be difficult, therefore we request Minor
release binding.
-- John
http://blogs.sun.com/jbeck