Sun Microsystems Logo
Products and Services
 
Support and Training
 
 

Previous Previous     Contents     Index     Next Next

Changes to the MAILER() Declaration

The MAILER() declaration specifies support for delivery agents. To declare a delivery agent, use the following syntax.

MAILER(`symbolic_name')

Note the following changes.

  • In this new version of sendmail, the MAILER(`smtp') declaration now includes an additional mailer, dsmtp, which provides on-demand delivery by using the F=% mailer flag. The dsmtp mailer definition uses the new DSMTP_MAILER_ARGS, which defaults to IPC $h.

  • Numbers for rule sets that are used by MAILERs have been removed. You now have no required order for listing your MAILERs except for MAILER(`uucp'), which must follow MAILER(`smtp') if uucp-dom and uucp-uudom are used.

For more information about mailers, refer to Mailers. If you need to build a new sendmail.cf file, refer to Building the sendmail.cf Configuration File (Task) in Chapter 22, Mail Services (Tasks).

New Delivery Agent Flags

The following table describes new delivery agent flags, which by default are not set. These single-character flags are Boolean. You can set or unset a flag by including or excluding it in the F= statement of your configuration file, as shown in the following example.

Mlocal,    P=/usr/lib/mail.local, F=lsDFMAw5:/|@qSXfmnz9, S=10/30, R=20/40,
Mprog,     P=/bin/sh, F=lsDFMoqeu9, S=10/30, R=20/40, D=$z:/,
Msmtp,     P=[IPC], F=mDFMuX, S=11/31, R=21, E=\r\n, L=990,
Mesmtp,    P=[IPC], F=mDFMuXa, S=11/31, R=21, E=\r\n, L=990,
Msmtp8,    P=[IPC], F=mDFMuX8, S=11/31, R=21, E=\r\n, L=990,
Mrelay,    P=[IPC], F=mDFMuXa8, S=11/31, R=61, E=\r\n, L=2040,

Table 24-16 New Mailer Flags

Flag

Description

%

Mailers that use this flag do not attempt delivery to the initial recipient of a message or to queue runs unless the queued message is selected by using an ETRN request or one of the following queue options: -qI, -qR, or -qS.

1

This flag disables the ability of the mailer to send null characters (for example, \0).

2

This flag disables the use of ESMTP and requires that SMTP be used instead.

6

This flag enables mailers to strip headers to 7 bit.

New Equates for Delivery Agents

The following table describes new equates that you can use with the M delivery agent definition command. The following syntax shows you how to append new equates or new arguments to the equates that already exist in the configuration file.

Magent_name, equate, equate, ...

The following example includes the new W= equate. This equate specifies the maximum time to wait for the mailer to return after all data has been sent.

Msmtp, P=[IPC], F=mDFMuX, S=11/31, R=21, E=\r\n, L=990, W=2m

When you modify the definition of a value for m4 configuration, use the syntax that is provided in the following example.

define(`SMTP_MAILER_MAXMSGS', `1000')

The preceding example places a limit of 1000 on the number of messages that are delivered per connection on an smtp mailer.

If you need to build a new sendmail.cf file, refer to Building the sendmail.cf Configuration File (Task) in Chapter 22, Mail Services (Tasks).


Note - Typically, you modify the equate definitions in the mailer directory only when you fine-tune.


Table 24-17 New Equates for Delivery Agents

Equate

Description

/=

Argument: Path to a directory

Specifies a directory to apply chroot() to before the mailer program is executed

m=

Argument: Any of the following m4 values that have previously been defined with the define() routine

  • SMTP_MAILER_MAXMSGS, for the smtp mailer

  • LOCAL_MAILER_MAXMSGS, for the local mailer

  • RELAY_MAILER_MAXMSGS, for the relay mailer

Limits the number of messages that are delivered per connection on an smtp, local, or relay mailer

W=

Argument: An increment of time

Specifies the maximum time to wait for the return of the mailer after all data has been sent

New Queue Features

The following list provides details about new queue features.

  • This release supports multiple queue directories. To use multiple queues, supply a QueueDirectory option value in the configuration file that ends with an asterisk (*), as is shown in the following example.

    O QueueDirectory=/var/spool/mqueue/q*

    The option value, /var/spool/mqueue/q*, uses all of the directories (or symbolic links to directories) that begin with "q" as queue directories. Do not change the queue directory structure while sendmail is running. Queue runs create a separate process for running each queue unless the verbose flag (-v) is used on a non-daemon queue run. The new items are randomly assigned to a queue.

  • The new queue file-naming system uses file names that are guaranteed to be unique for 60 years. This system allows queue IDs to be assigned without complex file-system locking and simplifies the movement of queued items between queues.

  • In version 8.12 of sendmail, only root can run the mail queue. For further details, refer to the changes that are described in the mailq(1) man page. For new task information, refer to Administering the Queue Directories (Task Map).

  • To accommodate envelope splitting, queue file names are now 15-characters long, rather than 14-characters long. File systems with a 14-character name limit are no longer supported.

For task information, refer to Administering the Queue Directories (Task Map).

Changes for LDAP in sendmail

The following list describes changes in the use of the Lightweight Directory Access Protocol (LDAP) with sendmail.

  • LDAPROUTE_EQUIVALENT() and LDAPROUTE_EQUIVALENT_FILE() permit you to specify equivalent host names, which are replaced by the masquerade domain name for LDAP routing lookups. For more information, refer to /usr/lib/mail/README.

  • As noted in the Release Notes that are part of the sendmail distribution at ftp://ftp.sendmail.org, the LDAPX map has been renamed to LDAP. Use the following syntax for LDAP.

    Kldap ldap options

  • This release supports the return of multiple values for a single LDAP lookup. Place the values to be returned in a comma-separated string with the -v option, as is shown.

    Kldap ldap -v"mail,more_mail"

  • If no LDAP attributes are specified in an LDAP map declaration, all attributes that are found in the match are returned.

  • This version of sendmail prevents commas in quoted key and value strings in the specifications of the LDAP alias file from dividing a single entry into multiple entries.

  • This version of sendmail has a new option for LDAP maps. The option, -Vseparator enables you to specify a separator, so that a lookup can return both an attribute and a value that are separated by the relevant separator.

  • Instead of using the %s token to parse an LDAP filter specification, you can also use the new token, %0, to encode the key buffer. The %0 token applies a literal meaning to LDAP special characters.

    The following example shows how these tokens differ for a "*" lookup.

    Table 24-18 Comparison of Tokens

    LDAP Map Specification

    Specification Equivalent

    Result

    -k"uid=%s"

    -k"uid=*"

    Matches any record with a user attribute

    -k"uid=%0"

    -k"uid=\2A"

    Matches a user with the name "*"

The following table describes new LDAP map flags.

Table 24-19 New LDAP Map Flags

Flag

Description

-1

Requires a single match to be returned. If more than one match is returned, the results are the equivalent of no records being found.

-r never|always|search|find

Sets the LDAP alias dereference option.

-Z size

Limits the number of matches to return.

Previous Previous     Contents     Index     Next Next