Traditionally, sendmail was set up through a system
configuration file (typically called
/etc/mail/sendmail.cf, or in older distributions,
/etc/sendmail.cf, or even
/usr/lib/sendmail.cf ) that is not
anything close to any language you've seen before. Editing the
sendmail.cf file to provide customized behavior
can be a humbling experience.

Today sendmail makes all configuration
options macro driven with an easy-to-understand syntax. The macro method
generates configurations to cover most installations, but you always have
the option of tuning the resultant sendmail.cf manually
to work in a more complex environment.