Sendmail on Mac OS X 10.3 (Panther)

Installation | Configuration | Related

Mac OS X 10.3 (Panther) ships with the Postfix Mail Transport Agent (MTA). To use Sendmail instead, compile Sendmail from source. I use Sendmail on Mac OS X 10.3 as I could not get Postfix to properly relay e-mail via Transport Layer Security (TLS) using a custom Certificate Authority.

These pages do not cover Mac OS X Server as I do not have access to it.

Installation

Always verify the Pretty Good Privacy (PGP) signature on the Sendmail distribution before attempting to build Sendmail.

The Apple Developer Tools (XCode) will need to be installed on the system being used to build Sendmail. Also, the compiler in use may make a difference. Use the gcc_select utility to change the version of gcc used, and long list the gcc file to see which version is currently selected.

$ ls -l /usr/bin/gcc
lrwxr-xr-x 1 root wheel 7 2 Feb 08:29 /usr/bin/gcc -> gcc-3.3

Sendmail 8.12.11 supports Mac OS X 10.3 (Darwin 7), though needs certain Build options to compile properly on the most recent release of Mac OS X (Darwin 7.2.0).

To test whether sendmail built, check the obj* directory under the Sendmail source tree for a sendmail binary.

$ file obj*/sendmail/sendmail
obj.Darwin.7.0./sendmail/sendmail: Mach-O executable ppc

To reinstall the system-wide configuration files to where Apple kept them in previous releases of Mac OS X, use the following command from the sendmail source directory.

The rsync command behaves differently if the trailing slash on cf/ is removed.

# rsync --delete -rutvz cf/ /usr/share/sendmail/conf

After updating the above configuration files, rebuild sendmail.cf and submit.cf, then restart sendmail.

Configuration

Use the sendmail source tools for building the configuration files, or use my Sendmail configurations. Some configuration pointers:

Be sure to disable the Postfix MTA in /etc/hostconfig, and use an @reboot or proper startup script to launch sendmail if running it as a daemon.

$ grep MAILSERVER /etc/hostconfig
MAILSERVER=-NO-

Related