It’s a while since I last ranted about how much sendmail sucks. In the intervening year or three, they’ve added a new, improved configuration file format. Sendmail apologists had told me repeatedly that thanks to the new config system, the software is no longer a bitch to configure.
Here’s an example of the new, improved config file format:
dnl define('STATUS_FILE', '/etc/mail/statistics’)dnl define('UUCP_MAILER_MAX', '2000000’)dnl define('confUSERDB_SPEC', '/etc/mail/userdb.db’)dnl define('confPRIVACY_FLAGS', 'authwarnings,novrfy,noexpn,restrictqrun')dnl define('confAUTH_OPTIONS', 'A')dnl dnl TRUST_AUTH_MECH('EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl dnl define('confAUTH_MECHANISMS', 'EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
Oh, yeah, way to go guys. That’s a real fuckin’ big improvement, practically configures itself huh?
That’s not what makes sendmail suck, though. It’s the shitty performance and near-impossibility of debugging it. After a recent RedHat upgrade, with associated sendmail upgrade, the thing was choking and dying on e-mail more than about 100K long. It was also sending mail off into the bit bucket. I spent an hour or so screwing around with the configuration to try and fix it.
Then I did something I should have done a long time ago: I wiped sendmail off the system, downloaded exim, and compiled it from source. I needed to change about four lines of config file before compiling, and add another four lines afterwards, and within five minutes I had a perfectly working e-mail MTA that was several times faster than sendmail on the same box.
I really think Apple should ditch sendmail from OS X.