Parameters and compilation options are defined in conf.h. Most of these need not normally be modified; common parameters are all in sendmail.cf. However, the sizes of certain primitive vectors, and so on, are included in this file. The numbers following the parameters are their default value.
[2048] The maximum line length of any input line. If message lines exceed this length they will still be processed correctly; however, header lines, configuration file lines, alias lines, and so on, must fit within this limit.
[256] The maximum length of any name, such as a host or a user name.
[256] The maximum number of parameters to any mailer. This limits the number of recipients that may be passed in one transaction. It can be set to any arbitrary number above about 10, since sendmail will break up a delivery into smaller batches as needed. A higher number may reduce load on your system, however.
[1000] The maximum number of atoms (tokens) in a single address. For example, the address eric@CS.Berkeley.EDU is seven atoms.
[25] The maximum number of mailers that may be defined in the configuration file.
[200] The maximum number of rewriting sets that may be defined. The first half of these are reserved for numeric specification (for example, ``S92''), while the upper half are reserved for auto-numbering (for example, ``Sfoo''). Thus, with a value of 200 an attempt to use S99 will succeed, but S100 will fail.
[25] The maximum number of values for the Precedence:
field that may be defined using the P line in
sendmail.cf (see
``P: precedence definitions'').
[100] The maximum number of items in the user environment that will be passed to subordinate mailers.
[100] The maximum number of MX records we will accept for any single host.
[12] The maximum number of alias databases that can be open at any time. Note that there may also be an open file limit.
[12] The maximum number of maps that may be stacked in a sequence class map.
[20] The maximum number of arguments in a MIME
Content-Type:
header; additional arguments will be ignored.
[20] The maximum depth to which MIME messages may be nested (that is, nested Message or Multipart documents; this does not limit the number of components in a single Multipart document).
[10] The maximum number of sockets sendmail will open for accepting connections on different ports.
[25] The maximum length of a macro name.
A number of other compilation options exist. These specify whether or not specific code should be compiled in. All except LOG and NOTUNIX are 0/1 valued.
If set, support for Internet protocol networking is compiled in. Previous versions of sendmail referred to this as DAEMON; this old usage is now incorrect. Defaults on; turn it off in the Makefile if your system does not support the Internet protocols.
If set, support for ISO protocol networking is compiled in (it may be appropriate to #define this in the Makefile instead of in conf.h).
If set, the syslog(3G) function is used. This makes an informational log record for each message processed, and makes a higher priority log record for internal system errors.
If you want no logging, turn it off in the configuration file.
Compile in the code to do fuzzy matching on the GECOS field in /etc/passwd. This also requires that the MatchGECOS option be turned on (see ``O: set option'').
Compile in code to use the Berkeley Internet Name Domain (BIND) server to resolve TCP/IP host names.
If you are using a non-UNIX mail format, you can set this flag
to turn off special processing of UNIX-style From:
lines.
This flag should be set to compile in the queueing code. If this is not set, mailers must accept the mail immediately or it will be returned to the sender.
If set, the code to handle user and server SMTP will be compiled in. This is only necessary if your machine has some mailer that speaks SMTP (this means most machines everywhere).
Include the experimental Berkeley user information database package. This adds a new level of local name expansion between aliasing and forwarding. It also uses the NEWDB package.
The load average type. There are several built-in ways of computing the load average. sendmail tries to auto-configure them based on imperfect guesses; you can select one using the cc option -DLA_TYPE=type, where type is:
If type LA_INT, LA_SHORT, or LA_FLOAT is specified, you may also need to specify _PATH_UNIX (the path to your system binary) and LA_AVENRUN (the name of the variable containing the load average in the kernel; usually _avenrun or avenrun).