Sendmail+IDA makes such pain essentially a thing of the past by having all configuration options table-driven with rather easy to understand syntax. These options are configured by running m4 (a macro processor) or dbm (a database processor) on a number of data files via Makefiles supplied with the sources.
The sendmail.cf file defines only the default behavior of the system. Virtually all special customization is done through a number of optional tables rather than by directly editing the sendmail.cf file. A list of all sendmail tables is given in figure-.
Figure: sendmail Support Files.