Summary: Sendmail.cf for an HP 715 w/Sparc as router

From: MICHAEL A. CLARK, MECHANICAL DYNAMICS (mclark@adams.com)
Date: Sat Apr 02 1994 - 17:56:07 CST


Sun Managers:

Summary: Re: Sendmail.cf for an HP 715 into a Sparc 10/41

I received several solutions to this problem and I appreciate each and
every one. I ended up using the first one I read this morning from
Jonathan B. Horen of Applicon and the problem was resolved. (Thanks Jonathan!)

Once I had the sendmail.cf, it was a simple matter of changing the sections as
necessary to match our installation and using sam, restarting the sendmail
daemon. I did run into a small snag, on the SPARC 10/41 system the sendmail.cf
file is located in /etc and on the HP 715, it is located in /usr/lib. This was
the only problem and after the new sendmail.cf was put in place, we were in
business!!!

Thanks again for all your help, this is a great way to get things done!

This message contains all the suggestions including the sendmail.cf files
in case anyone else should run into this issue.

-Michael Clark

-----------------------------------------------------------------------------
Michael A. Clark Systems Support and Distributions Section Manager
mclark@adams.com (313) 994-3800 x 226 Voice
                        (313) 994-6418 Fax
Mechanical Dynamics, Inc. * 2301 Commonwealth Blvd * Ann Arbor, MI 48105
-----------------------------------------------------------------------------

Original Request:

 
> We have been trying to establish e-mail communications between our HP
> systems and our Sun Systems. We are using a sun as the main network
> e-mail mailhost and internet gateway.
>
> What we are looking for is a sendmail.cf for an HP 715/50 system or at
> least a direction to look in.
>
> We have tried Sun and Hp, no luck so far.
>
>
> Thanks in advance for any help you can give.

*********************** Begin New Message ***********************
*********************** Begin New Message ***********************
*********************** Begin New Message ***********************
*********************** Begin New Message ***********************

Attached is a copy of the sendmail.cf we use (major Sun network,
with 2 HP-715/33 workstations) -- hope it helps.

NOTE: it is configured for site-hiding (the DY macro) on outward-bound
      mail (so that recipients receive mail from user@domainname), and
      for host-hiding (S10/S20) on internal mail (so that recipients
      receive mail from user, w/o host or domainname).

--
Jonathan B. Horen         | Common things occur commonly,
Sr.  System Administrator |    Uncommon things do not. 
Applicom Systems, Ltd.    | When you hear hoofbeats,
16 Abba-Hillel Street     |    Don't think of zebras. 
Ramat-Gan, Israel         |
                          | -- motto, Epidemic Intelligence Service of the
horen@applicom.co.il      |    Center for Disease Control (CDC), Atlanta, GA

================== HP sendmail.cf ==================

############################################################ ############################################################ ##### ##### ##### SENDMAIL CONFIGURATION FILE ##### ##### ##### ############################################################ ############################################################

##### @(#)$Revision: 1.28.109.3 $

############################################################ ############################################################ ##### ##### ##### CAVEAT EMPTOR ##### ##### ##### ##### This configuration file is suitable for use on ##### ##### most HP-UX systems and can be installed, ##### ##### unmodified, as sendmail's configuration file, ##### ##### /usr/lib/sendmail.cf ##### ##### ##### ##### Modifications that reflect this host's mail ##### ##### environment may be needed. HP recommends that ##### ##### these be limited to the "Localizations" and ##### ##### "Routing Options" described below. ##### ##### ##### ##### ##### ##### HP will provide support for this configuration ##### ##### file if: ##### ##### ##### ##### * it is left unmodified; or ##### ##### ##### ##### * the only changes made are those described ##### ##### below under "Localizations" and "Routing ##### ##### Options". ##### ##### ##### ##### If other changes are made to this file, you ##### ##### are on your own. ##### ##### ##### ############################################################ ############################################################

################################################################################ # Localizations: # ################################################################################ # # # While this configuration file can be used unmodified, it may be # # appropriate to make some or all of the following changes to this # # configuration file to incorporate local information or preferences. # # # # Detailed descriptions of sendmail.cf syntax and complete list of # # the configuration options can be found in the documentation. # # # # Use the Nameserver (option I): # # # # If this host is using the domain nameserver, the I option should # # be set. In most cases, sendmail will be able to detect whether # # the nameserver is in use and will automatically do the right # # thing. However, in some cases it will incorrectly appear to # # sendmail as though the nameserver is not being used, for example # # if the nameserver has not finished loading its data and is not yet # # responding to queries. If this host normally uses the nameserver, # # messages should be deferred when the nameserver is not running. # # # # If the I option is set, if an MX record lookup or gethostbyname() # # call fails because the nameserver is not running, sendmail will # # defer the message. # # # # If the I option is not set, if an MX record lookup fails, sendmail # # will assume that the nameserver is not being used, and that there # # are no MX records, and try to connect directly to the host. If a # # host name lookup fails, sendmail will assume that there is no # # entry for the host and return an error. # # # # By default, the I option is not set. To set it, uncomment the # # line: # # # # # OI # # # # Site Hiding (macro Y): # # # # It may be desirable to "hide" the name of a host generating SMTP # # mail, so that replies need not be directed to the particular host # # on which the message originated. This simplifies moving a user's # # mail home from one host to another, and gives the appearance of # # mail being generated by a unified organization rather than a # # collection of hosts. # # # # By default the sender of a message routed via SMTP is identified # # with the header line: # # # # From: Full Name <user@host> # # # # where "host" is the canonical name of the local host (macro w). # # # # If the macro Y is defined, the value of macro Y will be appended # # instead of the local host name. The macro Y would typically be # # defined either as the name of a local mail hub, or as the local # # domain name. Although the name need not be the name of an actual # # host, this scheme requires that some host recognize the name and # # be able to route mail to the originating user. # # # # For example, to identify SMTP mail from the local host as # # originating from the domain poo.bah.edu, Y should be defined by # # replacing the line: # # # # # DY # # # # with: # # # # DYpoo.bah.edu # # # # An outgoing SMTP message from user "fred" at the host "burb" # # would have the From: header line: # # # # From: Fred User <fred@poo.bah.edu> # # # # Assume that the host "porpoise.poo.bah.edu" is to accept and # # forward mail for the domain poo.bah.edu. In order for users at # # other hosts to reply to such messages, there are two things that # # must be done: # # # # 1) Replying hosts must be able to map the name poo.bah.edu to an # # internet address or MX record. # # # # 2) Some host must be prepared to recognize mail addressed to # # "user@poo.bah.edu" as local, and be able to route such mail # # appropriately. # # # # To satisfy 1), the nameserver for the domain bah.edu must have # # either an MX record for the name "poo" directing its mail to the # # host porpoise.poo.bah.edu, or an address record mapping the name # # "poo" to an internet address belonging to porpoise.poo.bah.edu. # # Do not make "poo.bah.edu" a CNAME for porpoise.poo.bah.edu, # # because in that case a recipient may canonicalize the sender # # address "user@poo.bah.edu" to "user@porpoise.poo.bah.edu", which # # defeats the purpose of site hiding. For the same reason, if a # # replying host uses /etc/hosts or NIS (formerly known as Yellow # # Pages) to do host name to address mapping, the entry for # # poo.bah.edu should be a separate line, not a host name alias. # # # # To satisfy 2), on porpoise, the name "poo.bah.edu" must be added # # to class w (see below), and there must be mail aliases for all # # users on systems with macro Y defined as above. For example: # # # # fred: fred@burb.poo.bah.edu # # # # Aliases for Local Host (class w): # # # # This configuration will automatically recognize that mail to users # # at the local host or any of its host name aliases or CNAMEs should # # be delivered locally. Other host names that you wish to recognize # # as local can be added to class w as either a simple class # # definition (Cw) or a file class (Fw). Any names added to class w # # must be canonical names. # # # # For example, by default, only the server cnode of an HP-UX cluster # # runs the sendmail daemon, and mail from the clients is sent out # # with headers indicating that it originated on the server. # # # # However, you might want the server also to accept mail addressed # # to users at the clients. You could have nameserver MX records # # directing mail for the clients to the server, and make the server # # recognize the clients' host names as local. If the clients' names # # are ick, ack, and ock in the domain urk.com, the class w could be # # augmented as follows: # # # # Cw ick.urk.com ack.urk.com ock.urk.com # # # # Message-ID Header Field # # # # Associating a unique Message-ID header line with every message can # # be useful for tracing messages through the mail system. This is # # not the default because it makes the syslog file grow 50% faster. # # If the configuration file line: # # # # # H?M?Message-Id: <$t.$i@$w> # # # # is uncommented, sendmail will generate a Message-ID header line # # for each message it routes that does not already have one. The id # # contains the date (GMT), in the form YYMMDDhhmm, the queue ID # # associated with the message on the local host, and the local host # # name. # # # # In any case, if an incoming message already has a Message-ID # # header line, sendmail will preserve this line. # # # # Postmaster Copy (option P): # # # # If this option is set to a valid address, when an undeliverable # # message is mailed back, a copy of the message header (but not the # # message body) is delivered to the PostMasterCopy address. It is # # suggested that this address be "Postmaster" since RFC 822 requires # # that there be a valid Postmaster address on all mail systems, and # # since sendmail also attempts to deliver undeliverable error return # # messages to Postmaster. # # # # Postmaster should be aliased locally to the (local or remote) # # address of the person responsible for mail system administration. # # # # To enable this feature, uncomment the line: # # # # # OPPostmaster # # # # If desired, replace "Postmaster" with the appropriate address. # # # # Dumb UUCP Hosts (class G): # # # # If your host has UUCP connections to hosts running "dumb", # # i.e. non-RFC 822 compatible, UUCP mailers, you should define the # # class G as a list of these hosts. This will cause UUCP mail to # # these hosts to be sent via the dumbuucp mailer rather than the # # normal uucp mailer. Since "dumb" mailers will not add their host # # names to the return path in the From: header field, the dumbuucp # # delivery agent deletes From: header fields from mail for such # # hosts. In most cases the mail system on the host where final # # delivery is done will be able to generate a correct return path # # from other information in the message header. # # # # For example, if your host has UUCP connections to dumb UUCP # # mailers on hosts rrgh and feh, the class G should be defined, # # on the line beginning with CG, as follows: # # # # CGrrgh feh # # # # Trusted Users (T): # # # # If other hosts login to your host to perform UUCP mail transfers, # # the login ids used by these systems must be defined as trusted # # users. The login id "uucp" is already defined as a trusted user. # # If necessary, add lines of the form: # # # # Tusername # # # # to the Trusted Users section of this file (lines beginning with T). # # # # Logging Level (option L): # # # # Logging level determines the classes of events which will be # # logged by sendmail in /usr/spool/mqueue/syslog. By default the # # log level is 10, which reports successful deliveries (and the # # mailer and host used for delivery), queue daemon startup, alias # # database rebuilds, and various errors. More detailed information # # is reported with higher log levels. In particular, log level 11 # # reports the MX host (if any) and internet address to which mail # # was delivered. Refer to the documentation for details. # # # # Note that log level also affects the information reported by # # sendmail -bv. At log level 10 and higher, sendmail also reports # # the mailer and host that would be used for addresses that are # # "deliverable." # # # # The option L is defined on the line beginning with OL. # # # # Delivery Mode (option d): # # # # The default delivery mode is "background": the user agent # # invoking sendmail will return immediately, and sendmail will route # # the mail in the background. Other options are "interactive": # # sendmail will not return control to the program invoking it until # # the mail has been routed; and "queue": sendmail will put the # # message in the mail queue and a sendmail queue process will route # # the message later. Delivery mode is defined on the line beginning # # with Od. # # # # Error Reporting Mode (option e): # # # # The default error reporting mode is "p": if sendmail detects an # # error before it finishes sending a message, error messages are # # output to stdout; if errors occur later they are mailed back. # # Other options are: "w": if the sender is logged in, any error # # messages are written to the sender's terminal, otherwise they are # # mailed back; "m": error messages are always mailed; and "q": no # # error messages. Error reporting mode is defined on the line # # beginning with Oe. # # # # Read Timeout (option r): # # # # If the program transmitting a message to sendmail hangs, or if an # # SMTP peer goes down, sendmail's read will time out after this # # interval. RFC 1123 section 5.3.2 discusses appropriate values for # # this timeout. Refer to the sendmail documentation for the syntax # # for specifying time intervals. The read timeout is defined on the # # line beginning with Or. # # # # Queue Timeout (option T): # # # # Messages in the mail queue which sendmail has been unable to # # deliver for this amount of time will be returned to the sender as # # undeliverable. Refer to the documentation for the syntax for # # specifying time intervals. Queue timeout is defined on the line # # beginning OT. # # # # Queue-Only Load Average (option x): # # # # In order to limit load on a very busy system, sendmail can be # # configured to queue up low priority messages rather than attempt # # delivery immediately if the five-minute load average is greater # # than some integer value, by default 8. This value is defined on # # the line beginning Ox. # # # # Refuse-Connections Load Average (option X): # # # # In order to limit load on a very busy system, the sendmail daemon # # can be configured not to accept SMTP connections if the five- # # minute load average is greater than some integer value, by # # default 12. This value is defined on the line beginning Ox. # # # ################################################################################

################################################################################ # Routing Options: # ################################################################################ # # # The supported routing options are described below. Options for # # routing SMTP mail, UUCP mail, X.400 mail, and OpenMail mail are # # described. # # # # To implement any of these options, edit a copy of this file # # according to the instructions for that option. With minor # # exceptions, noted where appropriate, the options are independent # # of each other; you can implement any of them or none of them. # # # # Some of these options require that you have installed and # # configured other software not part of the ARPA/9000 product. # # # # # # Operator precedence: # # # # It is generally agreed that mixed addresses, being ambiguous, are # # abhorrent. This configuration file interprets address operators # # in the order '@', '!', '%'. # # # # Changes to this precedence are not supported! # # # # Mixed addresses are resolved as follows: # # # # Address Mailer Host User Destination # # ------- ------ ---- ---- ----------- # # user%hostA@hostB tcp hostB user%hostA@hostB user@hostA # # hostA!user@hostB tcp hostB hostA!user@hostB hostA!user # # hostA!user%hostB uucp hostA user@hostB user@hostB # # # ################################################################################ # SMTP Mail Routing: # ################################################################################ # # # By default, all mail to addresses of the form "user@host" will be # # routed to "host" using the SMTP protocol over TCP/IP. If the # # nameserver is in use, an MX record may direct sendmail to route # # mail for that host to some other host acting as a "mail exchanger" # # for the host in the recipient address. If there is no MX record # # for the host name, gethostbyname(3n) must be able to return an # # internet address for the host or else the delivery will fail. # # # # You can arrange to mail directly only to certain hosts. Mail to # # other hosts can either be rejected as an error, or be passed to a # # "relay" host for delivery. # # # # Direct SMTP connection within local domain only: # # # # This option makes sense only if your site uses internet domain # # style host names. You can define macro L as the name of the # # "local domain" and mail directly only to hosts whose canonical # # names end with that name. For example, if your local domain is # # "envy.sins.com", you might define macro L as "envy.sins.com" and # # define an SMTP relay, in which case sendmail would send directly # # to "user@porch.envy.sins.com" but relay "user@foyer.pride.sins.com". # # Alternatively, if your host is on a closed subnet, you might # # define macro L as "sins.com" and only relay mail (through a host # # with an interface on an open subnet as well as on your closed # # subnet) to domains outside sins.com . # # # # To route only to the local domain, first define macro L. For # # example, to route directly to hosts in the domain sins.com, define # # macro L, on the line beginning DL, as follows: # # # # DLsins.com # # # # Then uncomment the line in ruleset 0 following the comment: # # # # # connect to hosts in local domain # # # # Finally, comment out the line in ruleset 0 following the comment: # # # # # try to connect to any host for user@domain # # # # Direct SMTP connection to hosts in class S only: # # # # You can define a file class S of hosts to connect to directly. # # This option does not make much sense if your host runs the # # nameserver or NIS (formerly called Yellow Pages), since it # # requires that you keep a static table up to date. An internal # # hash table is generated from the file when the configuration file # # is frozen or, if no frozen configuration file is in use, when # # sendmail starts up. Therefore, if the file from which the class # # is generated changes, the configuration file should be re-frozen # # and the sendmail daemon killed and restarted. # # # # The file from which this class is defined (by default # # /etc/hosts.smtp) should contain only host names to which your host # # can connect via TCP, as the first word on each line. It would be # # appropriate for the file to include host name aliases as well as # # official host names, and to exclude hosts that do not run an SMTP # # server. # # # # The file can contain internet domain style names. The current # # HP-UX version of sendmail can match multi-token names to class # # members. # # # # To define file class S, first uncomment the line defining class S # # from /etc/hosts.smtp, following the comment: # # # # # class S defines hosts to which you connect directly for SMTP mail # # # # Then uncomment the line in ruleset 0 following the comment: # # # # # connect to hosts in class S # # # # Finally, comment out the line in ruleset 0 following the comment: # # # # # try to connect to any host for user@domain # # # # Direct SMTP connection to nobody: # # # # This option makes sense only if an SMTP relay is also defined. A # # host (for example a single user workstation) may wish to send all # # SMTP mail through a relay. To arrange this, comment out the line # # in ruleset 0 following the comment: # # # # # try to connect to any host for user@domain # # # # Note that this option is not compatible with options 1 or 2 above. # # # # SMTP relay: # # # # If you are limiting direct SMTP connections as described above, # # by default mail to hosts outside the limits will be returned with # # an error. If you can connect to another host with wider network # # connectivity than your host has, you can use that host as an SMTP # # relay. Courtesy suggests that you get permission from the # # administrator of that host before relaying mail through it. # # # # Any host name defined as a relay to be reached via SMTP must be an # # official host name; in a domain naming environment this must be a # # fully qualified domain name. The canonicalization operator $[ $] # # is not applied to relay names. # # # # To set up an SMTP relay, define the macro S, on the line beginning # # DS, as the host name (not path) of the relay host. For example, # # if you wish to relay through the host blab.bub.edu, define S as # # follows: # # # # DSblab.bub.edu # # # # Then uncomment the line in Ruleset 0 following the comment: # # # # # pass unresolved SMTP addresses to the SMTP relay # # (don't relay source routes) # # # # Note that if you are not limiting direct SMTP connections in some # # way, SMTP mail cannot be relayed. # # # ################################################################################ # UUCP Mail Routing: # ################################################################################ # # # By default, mail to addresses of the form "host!user" is routed to # # the uucp (or dumbuucp) mailer only if "host" is in the class U, # # generated from the output of uuname(1). Addresses of this form # # referring to other host names are treated as errors. # # # # The following UUCP routing options are supported: # # # # pathalias external nameserver for UUCP: # # # # You can maintain a pathalias database to provide sendmail with # # information on how to route UUCP mail to hosts to which your host # # does not have a direct UUCP connection. This routing information # # is generated by pathalias(1m). Mkuupath(1m) creates a hashed # # database from the routing information, and uupath(1m) is used to # # access the database. # # # # To make sendmail use uupath, first set up the database as # # described above. Then uncomment the three lines in Ruleset 0 # # following the comment: # # # # # try to get a path to an unresolved UUCP address # # from pathalias nameserver # # # # UUCP relay (via UUCP): # # # # If your host has a UUCP path to another host with wider UUCP # # connectivity than your host has, it may be appropriate to route # # UUCP mail to hosts to which your host cannot connect through # # this other host, which will attempt to relay messages to their # # final destination. Courtesy suggests that you get permission from # # the administrator of that host before relaying mail through it. # # # # To implement UUCP relaying via UUCP, first define the macro U, on # # the line beginning DU, as either the relay host name or the path # # to the relay host. # # # # For example, if you wish to relay through the host pzzz, via the # # path rrgh!frr!feh!pzzz , define U: # # # # DUrrgh!frr!feh!pzzz # # # # If you have a direct UUCP connection to pzzz, define U: # # # # DUpzzz # # # # After defining the UUCP relay, uncomment the three lines in # # Ruleset 0 following the comment: # # # # # pass unresolved UUCP addresses to the UUCP relay (via UUCP) # # # # UUCP relay (via SMTP): # # # # If you can mail via SMTP to the host you wish to use as a UUCP # # relay, define the macro W, on the line beginning DW, as the name # # of the UUCP relay host. # # # # Note that in this case, the macro W must be a single host name, # # not a path. Note also that the name of any host defined as a # # relay to be reached via SMTP must be an official host name; in a # # domain naming environment this must be a fully qualified domain # # name. The canonicalization operator $[ $] is not applied to relay # # names. # # # # For example, if domain names are not in use at your site, and # # if the relay host's official name is pzzz, define W: # # # # DWpzzz # # # # Then uncomment the line in Ruleset 0 following the comment: # # # # # pass unresolved UUCP addresses to the UUCP relay (via SMTP) # # # # Note that there is some risk of generating ambiguous (mixed) # # addresses in message headers using this type of relaying, if you # # are passing mail to hosts whose mail configuration is not under # # your control. This may cause some messages to be unreplyable. # # # # UUCP to X.400 gateway # # # # By default, mail from an X.400 user or gateway via UUCP may not be # # replyable. This is due to uucp interpreting the '/' in the name as # # implying a file transfer. # # # # If you are using X.400 or OpenMail on this machine, and have UUCP # # links from this machine, then apply the following changes: # # # # Uncomment the line in Ruleset 6 following the comment: # # # # # Recognize mail from uucp for x400 user on this system # # # # Uncomment the line in Ruleset 13 following the comment: # # # # # enable uucp recipient to reply to remote x400 sender # # # # and uncomment the line in Ruleset 13 following the comment: # # # # # enable uucp recipient to reply to local x400 sender # # # # This works by adding an extra host name 'hpx400' to the route back # # to this system; this name is stripped by the line in Ruleset 6. # # # # Note that this will mean that a machine called 'hpx400' will not be # # reachable from this machine via a direct UUCP connection. # # # # # ################################################################################ # X.400 Mail Routing: # ################################################################################ # # # By default, mail to X.400 style addresses will be rejected as an # # error. The following options permit routing X.400 mail to the # # X.400/9000 product running on this host or a remote host. # # # # X.400 mail via X.400/9000 delivery agent on this host: # # # # If you have installed the X.400/9000 X.400 delivery agent # # (/usr/lib/x400/x4mailer) on this host, you must enable sendmail to # # route X.400 mail to this mailer. Uncomment the line in Ruleset 0 # # following the comment: # # # # # resolve X.400 mail: local host is X.400 gateway # # # # For example, if the name of the local host is "buh", and sendmail # # is configured as described above, it would route mail to the # # address User_Joe//SomeOrg/US/TELEMAIL////HP@buh to the X.400 # # delivery agent for further routing through the X.400 network. # # # # See the X.400/9000 documentation for a complete explanation of # # X.400 style addresses. # # # # The X.400 receiving agent, also implemented by /usr/lib/x400/x4mailer, # # will be able to hand incoming messages to sendmail for further # # routing without any changes to the sendmail configuration. # # # # X.400 Relay (X.400/9000 delivery agent on a remote host): # # # # If the X.400/9000 X.400 delivery agent runs on a different host, # # for example, "farfel", sendmail on farfel must be configured to # # route X.400 mail to the X.400 delivery agent as described above. # # Sendmail on the local host would route mail addressed, for # # example, to User_Joe//SomeOrg/US/TELEMAIL////HP@farfel to farfel # # via SMTP, and sendmail on farfel would hand the mail to the X.400 # # delivery agent for routing through the X.400 network. This would # # require no change in the local host's sendmail configuration. # # # # So that users need not know which remote host is the X.400 # # gateway, sendmail can be configured to route mail to X.400 # # addresses via a designated X.400 gateway automatically. Define # # the macro X, on the line beginning DX, as the name of (not a path # # to) the X.400 gateway host. The X.400 relay must be accessible to # # this host via SMTP and must be defined as an official host name. # # # # In a domain naming environment this must be a fully qualified # # domain name. The canonicalization operator $[ $] is not applied # # to relay names. # # # # For example, if official name of the X.400 gateway is farfel, # # define the macro X as follows: # # # # DXfarfel # # # # Then uncomment the line following the comment: # # # # # resolve X.400 mail: remote host is X.400 gateway # # # # If the local host is named "buh", mail addressed to: # # # # User_Joe//SomeOrg/US/TELEMAIL////HP@buh # # # # will automatically be relayed to the X.400 delivery agent on # # farfel. # # # # See the X.400/9000 documentation for a complete explanation of # # X.400 style addresses. # # # ################################################################################ # OpenMail Routing: # ################################################################################ # # # By default, mail to OpenMail style addresses will be rejected as an # # error. The following options permit routing OpenMail and X.400 mail # # to the OpenMail product running on this host or a remote host. # # # # OpenMail to OpenMail delivery agent: # # # # If you have installed the OpenMail internal delivery agent # # /usr/openmail/bin/xport.in on this host, you must enable sendmail # # to route mail from other OpenMail systems to local OpenMail users # # via this mailer. Uncomment the line in Ruleset 0 following the # # comment: # # # # # resolve mail to OpenMail from remote OpenMail system # # # # OpenMail to X.400 delivery agent: # # # # If you have installed the OpenMail X.400 interface option # # (/usr/openmail/bin/x400.out) on this host, you must enable # # sendmail to route mail from OpenMail users to the X.400 network # # via this mailer. Uncomment the line in Ruleset 0 following the # # comment: # # # # # resolve mail to X.400 from OpenMail # # # # OpenMail delivery agent on this host: # # # # If you have installed the OpenMail delivery agent, # # /usr/openmail/bin/unix.in, on this host, you must enable sendmail # # to route mail to OpenMail users via this mailer. Uncomment the # # line in Ruleset 0 following the comment: # # # # # resolve mail to OpenMail: local host is OpenMail gateway # # # # For example, if the name of the local host is "warsh", and # # sendmail is configured as described above, it would route mail to # # the address User_Joe/SomeOrgUnit@warsh to the OpenMail delivery # # agent for routing through the OpenMail network. # # # # See the OpenMail documentation for a complete explanation of # # OpenMail style addresses. # # # # If the sendmail configuration has not been changed to pass X.400 # # messages to X.400/9000, then the above change will also cause X.400 # # messages to be passed to OpenMail. For example, the address # # User_Joe//SomeOrg/US/TELEMAIL////HP@warsh would be passed to the # # OpenMail delivery agent for further routing through the X.400 # # network. # # # # The OpenMail receiving agent will be able to hand incoming messages # # to sendmail for further routing without any changes to the # # sendmail configuration. # # # # OpenMail Relay (OpenMail delivery agent on a remote host): # # # # If the OpenMail delivery agent runs on a different host, for # # example, "tortue.ordinary.com", sendmail on tortue must be # # configured to route OpenMail mail to the OpenMail delivery agent # # as described above. Sendmail on the local host would route mail # # addressed, for example, to User_Joe/SomeOrgUnit@tortue to tortue # # via SMTP, and sendmail on tortue would hand the mail to the # # OpenMail delivery agent for further routing through the OpenMail # # or X.400 networks. This would require no change to the local # # host's sendmail configuration. # # # # So that users need not know which remote host is the OpenMail # # gateway, sendmail can be configured to route mail to OpenMail # # addresses via a designated OpenMail gateway automatically. Define # # the macro Z, on the line beginning DZ, as the name (not path) of # # the OpenMail gateway host. The OpenMail relay must be accessible # # to this host via SMTP. # # # # In a domain naming environment this must be a fully qualified # # domain name. The canonicalization operator $[ $] is not applied # # to relay names. # # # # For example, if the official host name of the OpenMail gateway is # # tortue.ordinary.com, define the macro Z as follows: # # # # DZtortue.ordinary.com # # # # Then uncomment the line following the comment: # # # # # resolve mail to OpenMail: remote host is OpenMail gateway # # # # If the local host is named "warsh", mail addressed to: # # # # User_Joe//SomeOrg/US/TELEMAIL////HP@warsh # # # # will automatically be relayed to the OpenMail delivery agent on # # tortue.ordinary.com . # # # # See the OpenMail documentation for a complete explanation of # # OpenMail style addresses. # # # ################################################################################

############################################################ ### Localizable Options ### ############################################################

# logging level OL10

# defer messages to [IPC] mailers if the nameserver is not running #OI

# delivery mode Odbackground

# error reporting mode Oep

# read timeout Or5m

# queue timeout interval OT3d

# load average at which low priority messages are queued rather than delivered Ox8

# load average at which daemon refuses to accept connections OX12

# postmaster address which will receive headers of undeliverable messages # OPPostmaster

############################################################ ### Other Options ### ############################################################ ### ### ### HP recommends that these options not be changed. ### ### ### ############################################################

# queue directory OQ/usr/spool/mqueue

# Save those UN*X From_ lines Of

# location of alias file OA/usr/lib/aliases

# temporary file mode OF0600

# default UID Ou1

# default GID Og1

# location of help file OH/usr/lib/sendmail.hf

# recognize old style as well as new style lists in headers Oo

# statistics file OS/usr/lib/sendmail.st

# wait up to 5 minutes for completion of alias db initialization Oa5

# queue up everything before starting transmission Os

# send to me, too if in alias expansion Om

# if the load average exceeds the x option limit, divide the q option # value by the difference (plus one) between the current load average and # the x option limit to find the maximum priority value (i.e. minimum # priority) of messages to send immediately. Oq10000

# value added to message priority per recipient Oy1000

# message precedence factor Oz1800

# value added to message priority per queue run OZ9000

############################################################ ### Configuration-Specific Macro and Class Definitions ### ############################################################

# site hiding: local sender identified as user@my_site instead of user@my_host DYapplicom.co.il

# class w defines aliases for the local host # Cw

# macro L defines the "local domain" to which you connect directly for SMTP mail DL

# class S defines hosts to which you connect directly for SMTP mail # FS/etc/hosts.smtp %s

# class U defines known direct UUCP connections FU|/usr/bin/uuname %s

# UUCP relay for unresolved ! addresses (via UUCP) DU

# UUCP relay for unresolved ! addresses (via SMTP) DW

# SMTP relay for unresolved @ addresses DSmailhost

# X.400 relay if X.400 delivery agent is not local DX

# OpenMail relay if OpenMail delivery agent is not local DZ

# dumb (not RFC 822 compatible) UUCP hosts CG

# pathalias external nameserver program DP/usr/bin/uupath

############################################################ ### Configuration Version ### ############################################################

DV16.2

############################################################ ### Required Macro Definitions ### ############################################################

# official domain name of this host for SMTP Dj$w

# my name DnMAILER-DAEMON

# UNIX header format DlFrom $g $d

# delimiter (operator) characters Do.:%@!^=/[]|

# format of a total name Dq$?x$x <$g>$|$g$.

# SMTP banner De$j HP Sendmail ($v/$V) ready at $b

############################################################ ### Message Precedences ### ############################################################

Pfirst-class=0 Pspecial-delivery=100 Pjunk=-100

############################################################ ### Trusted Users ### ############################################################

Troot Tdaemon Tuucp Tx400

############################################################ ### Header Field Formats ### ############################################################

HReceived: $?sfrom $s $.by $w$?r with $r$. ($v/$V) id $i; $b HResent-Date: $a HDate: $a HResent-From: $q H?F?From: $q H?x?Full-Name: $x H?P?Return-Path: <$g> HSubject: # HPosted-Date: $a # HReceived-Date: $b # HResent-Message-Id: <$t.$i@$w> # H?M?Message-Id: <$t.$i@$w>

############################################################ ############################################################ ##### ##### ##### Address Rewriting Rulesets ##### ##### ##### ############################################################ ############################################################

############################################################ ### Ruleset 1 - Sender Field Pre-rewriting ### ############################################################

S1 R$+ $:$>6$1 strip my_host and canonicalize R$*<@$+>$* $@$1<@$2>$3 already has (remote) domain R$+/$*/$*/$*/$* $:$1/$2/$3/$4/$5<@$w> @my_domain on local X.400 sender

############################################################ ### Ruleset 2 - Recipient Field Pre-rewriting ### ############################################################

S2 R$+ $:$>6$1 strip my_host and canonicalize R$*<@$+>$* $@$1<@$2>$3 already has (remote) domain R$+/$*/$*/$*/$* $:$1/$2/$3/$4/$5<@$w> @my_domain on local X.400 recpt

############################################################ ### Ruleset 3 - Address Internalization ### ############################################################

S3 # handle "From:<>" special case R<> $@$n null address => MAILER-DAEMON

# basic textual canonicalization R$*<$*<$+>$*>$* $1<$2$3$4>$5 strip <> from inside R$*<$+>$* $2 strip phrase and <> R$+ at $+ $1@$2 RFC 733 at => RFC 822 @

# source route <@a,@b,@c:user@d> syntax to internal form <@a>:@b:@c:user@d R@$+,$+ @$1:$2 change all , to : R@$+.UUCP:$+ $@<@$1.UUX>:$2 .UUCP pseudo-domain in route R@$+:$+ $@<@$1>:$2 focus on next hop

# The @ delimiter takes precedence. Leave this alone. R$+@$+ $:$1<@$2> focus on domain R$+<$+@$+> $1$2<@$3> move gaze right R$+<@$+.UUCP> $@$1<@$2.UUX> .UUCP pseudo-domain R$+<@$+> $@$1<@$2> already in internal form

# The ! delimiter. R$+^$+ $1!$2 convert obsolete ^ to ! R$+!$+ $@$2<@$1.UUX> host!user => user<@host.UUX>

# % is a low precedence @. R$+%$+ $:$1<%$2> focus on domain R$+<$+%$+> $1$2<%$3> move gaze right R$+<%$+> $1<@$2> user%host => user@host R$+<@$+.UUCP> $@$1<@$2.UUX> .UUCP pseudo-domain

# miscellaneous cleanup R$+@ $@$1 user@ => user R$+% $@$1 user% => user

############################################################ ### Ruleset 4 - Final Output Post-rewriting ### ############################################################

S4 # special cases R$+<@> $1 null domain

# UUCP must always be presented as host!user R$+<@$+.UUX> $@$2!$1 user<@host.UUX> => host!user

# UUCP hop in source route R<@$+.UUX>:$+ <@$1.UUCP>:$2 .UUX in source route => .UUCP R<@$+>:$+.UUX$+ <@$1>:$2.UUCP$3 .UUX in source route => .UUCP

# defocus R$*<$+>$* $1$2$3 remove internal form <>

# don't change %s or @s in mixed addresses R$+!$+@$+ $@$1!$2@$3 don't interpret it any further R$+!$+%$+ $@$1!$2%$3 don't interpret it any further

# restore source route to external form R@$+:$+:$+ @$1,$2:$3 all but last : => , R@$+ $@<@$1> add <> to protect the ,s

# should be exactly one @ in user@domain style address R$+%$+ $1@$2 all % => @ R$+@$+@$+ $1%$2@$3 all but last @ => %

############################################################# ### Ruleset 0 - {Delivery_Agent, Host, User} Resolution ### #############################################################

S0 # recognize local host or canonicalize R$+ $:$>6$1 anything to ruleset 6 once

# resolve domain-literals (numeric internet addresses) not canonicalized above R$*<@[$+]> $#tcp$@[$2]$:$1@[$2] user@internet address R<@[$+]>:$* $#tcp$@[$1]$:@[$1]:$2 internet address in source route

# resolve mail to dumb UUCP hosts R$+<@$=G.UUX> $#dumbuucp$@$2$:$1 user@dumb_host.UUX

# resolve mail to other known UUCP hosts R$+<@$=U.UUX> $#uucp$@$2$:$1 user@host.UUX R<@$=U.UUX>:$+ $#uucp$@$1$:$2 @host.UUX in source route

# try to get a path to an unresolved UUCP address from pathalias nameserver # R$+<@$-.UUX> $:$>5$2!$1 uupath pathalias routing # R$+<@$=G.UUX> $#dumbuucp$@$2$:$1 to dumb UUCP host # R$+<@$=U.UUX> $#uucp$@$2$:$1 to other known UUCP host

# pass unresolved UUCP addresses to the UUCP relay (via SMTP) # R$+<@$+.UUX> $#tcp$@$W$:$1<@$2.UUX> to UUCP relay via SMTP

# pass unresolved UUCP addresses to the UUCP relay (via UUCP) # R$+<@$+.UUX> $:$>3 $U!$2!$1 re-internalize with $U # R$+<@$=G.UUX> $#dumbuucp$@$2$:$1 to dumb UUCP relay # R$+<@$+.UUX> $#uucp$@$2$:$1 to UUCP relay

# other UUCP addresses are in error R$*<@$+.UUX>$* $#error$:unable to route to UUCP host name $2

# select hosts to connect with directly for SMTP mail:

# connect to hosts in class S # R$+<@$=S> $#tcp$@$2$:$1<@$2> user@domain

# connect to hosts in local domain #R$+<@$+.$L> $#tcp$@$2.$L$:$1<@$2.$L> user@host.localdomain

# try to connect to any host for user@domain #R$+<@$+> $#tcp$@$2$:$1<@$2> user@domain

# try to connect to any host for source route R<@$+>:$+ $#tcp$@$1$:<@$1>:$2 source route

# pass unresolved SMTP addresses to the SMTP relay (don't relay source routes) R$+<@$+> $#tcp$@$S$:$1<@$2> user@domain to SMTP relay

# other SMTP addresses are in error R$*<@$+>$* $#error$:unable to route to domain $2

# resolve X.400 mail: local host is X.400 gateway # X.400 keyword addressing: # R/$+=$+/ $#x400$@$w$:/$1=$2/ # X.400 ordered addressing: # R$+/$*/$*/$*/$* $#x400$@$w$:$1/$2/$3/$4/$5

# resolve X.400 mail: remote host is X.400 gateway # X.400 keyword addressing: # R/$+=$+/ $#tcp$@$X$:/$1=$2/<@$X> # X.400 ordered addressing: # R$+/$*/$*/$*/$* $#tcp$@$X$:$1/$2/$3/$4/$5<@$X>

# resolve keyword addressing mail to OpenMail: local host is OpenMail gateway # R/$+=$* $#openmail$@$w$:/$1=$2 # resolve keyword addressing mail to OpenMail: remote host is OpenMail gateway # R/$+=$* $#tcp$@$Z$:/$1=$2<@$Z>

# file names, programs, and :include: must resolve to local mailer; # explicitly distinguish these from X.400 and OpenMail syntax R/$* $#local$:/$1 to absolute file path name R|$* $#local$:|$1 to a program R:include:$* $#local$::include:$1 to :include: list

# resolve mail to OpenMail: local host is OpenMail gateway # R$+/$* $#openmail$@$w$:$1/$2 # R$+;$* $#openmail$@$w$:$1/$2

# resolve mail to OpenMail: remote host is OpenMail gateway # R$+/$* $#tcp$@$Z$:$1/$2<@$Z> # R$+;$* $#tcp$@$Z$:$1/$2<@$Z>

# by default, reject X.400 address as error R$+/$*/$*/$*/$* $#error$:X\.400 delivery agent not configured

# by default, reject OpenMail address as error R$+/$* $#error$:OpenMail delivery agent not configured

# resolve mail to OpenMail from remote OpenMail system # Ropenmail $#omxport$@$w$:openmail

# resolve mail to X.400 from OpenMail # Ropenmailx4 $#omx400$@$w$:openmailx4

# other addresses must resolve to local mailer in order for mail to Full.Name, # command line aliases, and quoted user names (\user) to be delivered.

# remaining names must be local R$+ $#local$:$1 name

############################################################ ############################################################ ##### ##### ##### Special Rulesets ##### ##### ##### ############################################################ ############################################################

############################################################ ### Ruleset 5 - Pathalias Nameserver ### ############################################################

S5 R$+ $:$<P$1 uupath pathalias routing R$+ $:$>3$1 re-internalize

############################################################ ### Ruleset 6 - Local Host Recognition ### ############################################################

S6 # RFC 822 does not permit hostnames to end in . R$*<@$*.>$* $1<@$2>$3 strip trailing .

# strip local host R$+<@$w> $>3$1 strip my_host and re-internalize R<@$w>:$+ $>3$1 strip my_host and re-internalize

# recognize local host in UUCP syntax R$+<@$k.UUX> $:$1<@$w> my_host in UUCP syntax # Recognize mail from uucp for x400 user on this system # R$+<@hpx400.UUX> $:$1<@$w> X.400 in UUCP syntax R<@$k.UUX>:$+ $:<@$w>:$1 my_host.UUCP in source route

R$*<@$+.UUX>$* $@$1<@$2.UUX>$3 don't canonicalize host.UUX

# canonicalize host and possibly recurse R$*<@$+>$* $:$1<@$[$2$]>$3 user@host or source route R$*<@$=w>$* $:$>6$1<@$w>$3 recurse if still to my_host

############################################################ ############################################################ ##### ##### ##### Mailer (Delivery Agent) Definitions ##### ##### ##### ############################################################ ############################################################

############################################################ ### local and program mailers ### ############################################################

Mlocal, P=/bin/rmail, F=DFMPlms, S=10, R=20, A=rmail -d $u Mprog, P=/bin/sh, F=DFMPlshu, S=10, R=20, A=sh -c $u

S10 R$*<@$+.UUX> $@$1<@$2.UUX> don't modify UUCP address R$*<@$+>$* $@$1<@$2>$3 already has domain # R$+ $:$1<@$w> add local domain to user R$+ $:$1 remove local domain from user

S20 R$*<@$+.UUX> $@$1<@$2.UUX> don't modify UUCP address R$*<@$+>$* $@$1<@$2>$3 already has domain # R$+ $:$1<@$w> add local domain to user R$+ $:$1 remove local domain from user

############################################################ ### SMTP TCP/IP mailer ### ############################################################

Mtcp, P=[IPC], F=CDFMXmu, S=11, R=21, E=\r\n, A=IPC $h

S11 R$*<@$+.UUX> $@$2!$1<@$w> add local domain to UUCP address R<@$+>:$* $@<@$w>:@$1:$2 add local domain to source route R$+<@$+> $@$1<@$2> already has domain R$+ $:$1<@$?Y$Y$|$w$.> add local domain

S21 R$*<@$+>$* $@$1<@$2>$3 already has domain R$+ $:$1<@$w> add local domain

############################################################ ### UUCP mailer ### ############################################################

Muucp, P=/usr/bin/uux, F=DFMUshu, S=13, R=23, A=uux - $h!rmail ($u)

S13 R$+<@$+.UUX> $@$2!$1<@$k.UUX> host!user => my_host!host!user R$+@$+<@$+> $1%$2<@$3> all but last @ => % # enable uucp recipient to reply to remote x400 sender # R$*/$*<@$+> $@hpx400!$1/$2%$3<@$k.UUX> user@host => my_host!hpx400!user%host R$+<@$+> $@$1%$2<@$k.UUX> user@host => my_host!user%host R<@$+>:$+ $@<@$k.UUCP>:@$1:$2 prepend @my_host.UUCP to route # enable uucp recipient to reply to local x400 sender # R$*/$* $@hpx400!$1/$2<@$k.UUX> user => my_host!hpx400!user R$+ $@$1<@$k.UUX> user => my_host!user

S23

############################################################ ### Dumb UUCP mailer ### ############################################################ ### UUCP for hosts running non-RFC 822 mailers ### ############################################################

Mdumbuucp, P=/usr/bin/uux, F=DMUshux, R=23, A=uux - $h!rmail ($u)

############################################################ ### X.400 mailer ### ############################################################

Mx400, P=/usr/lib/x400/x4mailer, F=CDMFmn, S=14, R=24, A=x4mailer -f $g $u

S14

S24

############################################################ ### OpenMail mailers ### ############################################################

Mopenmail, P=/usr/openmail/bin/unix.in, F=DFLMXmnu, S=15, R=25, A=unix.in

S15

S25

Momxport, P=/usr/openmail/bin/xport.in, F=LMn, A=xport.in $u

Momx400, P=/usr/openmail/bin/x400.out, F=LMn, A=x400.out $u

*********************** Begin New Message *********************** *********************** Begin New Message *********************** *********************** Begin New Message *********************** *********************** Begin New Message ***********************

Does the HP have a local spool directory, or does it mount /var/spool/mail from the Sun ?

The first situation can be handled with a sendmail.cf like this:

### ### SENDMAIL CONFIGURATION FILE ### ### This is the sendmail.cf for a client who can make a TCP connection ### to a mail server. No local mail happens here, everything is sent to ### the server. Should work for just about any version of sendmail, ### i.e. doesn't use any e.g. Sun-specific features. Of coure, all ### userids on the client must also be known on the server, either as ### real userids or as aliases. Only the first section below should ### need any changes for a particular installation. ### ### Note that as opposed to the broken OR option in the sendmail.cf ### that Sun delivers, this configuration WILL queue mail on the client ### if it can't connect to the server. This means that the queue must ### be checked periodically, either by running sendmail in the normal ### daemon mode (e.g. /usr/lib/sendmail -bd -q1h) or by running ### /usr/lib/sendmail -q from crontab at appropriate intervals. Running ### sendmail in daemon mode is probably preferrable, since doing so ### will also handle mail that is mis-addressed to user@client. ### ### Originally From: rsalz@bbn.com (Rich Salz) ### Modified by: per@erix.ericsson.se (Per Hedeland) ###

## LOCAL CONFIGURATION INFORMATION

## Local domain name. ## This should only be changed if the full name of your hosts is something ## other than host.frobozz.com. Dmfrobozz.com

## The official name of this host. ## This may need changing if your 'hostname' command gives the full name, ## or you have specified the full name in your hosts database, or sendmail ## uses the name server directly (in a "default" Sun installation, none of ## these apply). To test this, give the command (after this file is ## installed) /usr/lib/sendmail -bs, and look at he hostname displayed. ## If the domain name is duplicated, remove the '.$m' from the definition. Dj$w.$m

## The server host where everything gets forwarded to. ## This is the one thing that you MUST change. Do NOT use a generic name ## like 'mailhost' here, but rather the name of the server host that ## should be visible in external mail. DRfrobozz

## Optionally do client-specific "aliasing" of certain local names. ## If you don't want mail sent to e.g. user 'root' on the client to be ## delivered to the same user on the server, uncomment the CL and DL ## lines below after editing them appropriately. ## (May be useful if groups of clients are administered by different ## individuals, since such mail often concerns host-specific issues.) # Local mail to these userids... #CLroot Postmaster MAILER-DAEMON # ...will be delivered to this userid on the server #DLsome-lsa

## GENERAL CONFIGURATION INFORMATION ## Stuff here is required and reflects some policy decisions.

## SMTP login message. De$j Sendmail $v/$V ready at $b ## Format of the UNIX from line -- essentially a constant. DlFrom $g $d ## Name to use for returned mail -- essentially a constant. DnMailer-Daemon ## Token delimeters -- word separators in the rewrite rules below. Do.:%@![] ## Format of a sender's address; use full name. Dq$x <$g> ## Version of this .cf file. DVclient-1.3

## Location of the alias file. OA/etc/aliases ## Default delivery mode (one of background, foreground, queue). Odbackground ## Permissions for any temporary files we create. OF0600 ## Default group id for mailers to run under. Og1 ## Location of the SMTP help file. OH/usr/lib/sendmail.hf ## Logging level. OL9 ## Allow headers to be in old style (i.e., spaces delimit names)? Oo ## Where to send important error messages. OPPostmaster ## Location of the queue directory. OQ/usr/spool/mqueue ## Give up on connections after this long a time period. Or30m ## Status file. OS/etc/sendmail.st ## Queue up everything before starting transmission? Os ## How long message can sit in queue before it's bounced back? OT3d ## Default user id for mailers to run under. Ou1 ## Password to enter wizard/debug mode. OW*

## Message precedences. Pfirst-class=0 Pspecial-delivery=100 Pbulk=-50 Pjunk=-100

## Trusted users -- these people can fake headers. Troot

## Format of headers. HReceived: $?sfrom $s $.by $j ($v/$V) id $i; $b H?D?Resent-Date: $a H?D?Date: $a H?F?Resent-From: $q H?F?From: $q H?x?Full-Name: $x HSubject: H?M?Resent-Message-Id: <$t.$i@$j> H?M?Message-Id: <$t.$i@$j>

## REWRITING RULES

## ## RULESET 0 -- Pick a mailer. S0 R$*<$*>$* $1$2$3 defocus R$+ $:$>3$1 make canonical R$*<$*.>$* $1<$2>$3 drop trailing dot R<@>:$* $@$>0$1 retry after route strip R$*<@> $@$>0$1 strip null trash & retry ## Machine dependent part of ruleset 0. ## Here is where we actually find a mailer to invoke. R$=L $:$L change really local names R$* $#relay$@$R$:$1 forward everything

## ## RULESET 1 -- From and From: fields. S1

## ## RULESET 2 -- To: field. S2

## ## RULESET 3 -- Basic name canonicalization. S3 # Handle the SMTP "from:<>" as a special case. R<> $@@ turn into magic token # Basic textual canonicalization. R$*<$+>$* $2 basic RFC821/822 parsing R$*<$*>$* $1$2$3 in case recursive # Make sure <@a,@b,@c:u@d> syntax is easy to parse -- undone later. R@$+,$+ @$1:$2 change all "," to ":" # Localize and dispose of domain-based addresses. R@$+:$+ $@<@$1>:$2 handle <route-addr> R$+:$*;@$+ $@$1:$2;@$3 list syntax R$+@$+ $:$1<@$2> focus on domain R$+<$+@$+> $1$2<@$3> move gaze right R$+<@$+> $@$1<@$2> already canonical # Convert old-style addresses to a domain-based address. R$+%$+ $@$1<@$2> u%h R$-!$+ $@$2<@$1.UUCP> resolve uucp names R$-.$+!$+ $@$3<@$1.$2> host.domain!user

## ## RULESET 4 -- Final output rewriting. S4 R@ $@ handle <> error addr # Externalize local domain info. R$*<$*LOCAL>$* $1<$2$m>$3 change local info R$*<@$=w>$* $1<@$R>$3 remove our name R$*<@$=w.$m>$* $1<@$R>$3 remove our name R$*<$+>$* $1$2$3 defocus R@$+:$+:$+ @$1,$2:$3 <route-addr> canonical

## ## RULESET 14 -- All fields for all mailers S14

## MAILER SPECIFICATIONS ##

## local; an error as we do no mail delivery here Mlocal, P=/usr/lib/sendmail, F=DFIMmsuX, S=14, R=14, A=sendmail $n

## prog; an error as we do no mail delivery here Mprog, P=/usr/lib/sendmail, F=DFIMmsuX, S=14, R=14, A=sendmail $n

## relay; connect to Sendmail on server host. Mrelay, P=[IPC], F=DFMmsuX, S=14, R=14, A=IPC $h, E=\r\n

-----------------------------------------------------------------------

For the second, I send you a sendmail.cf file, which we use on an HP 730. You might use it as a starting point:

############################################################ ############################################################ ##### ##### ##### SENDMAIL CONFIGURATION FILE ##### ##### ##### ############################################################ ############################################################

##### @(#)$Revision: 16.4 $

############################################################ ############################################################ ##### ##### ##### CAVEAT EMPTOR ##### ##### ##### ##### This configuration file is suitable for use on ##### ##### most HP-UX systems and can be installed, ##### ##### unmodified, as sendmail's configuration file, ##### ##### /usr/lib/sendmail.cf ##### ##### ##### ##### Modifications that reflect this host's mail ##### ##### environment may be needed. HP recommends that ##### ##### these be limited to the "Localizations" and ##### ##### "Routing Options" described below. ##### ##### ##### ##### ##### ##### HP will provide support for this configuration ##### ##### file if: ##### ##### ##### ##### * it is left unmodified; or ##### ##### ##### ##### * the only changes made are those described ##### ##### below under "Localizations" and "Routing ##### ##### Options". ##### ##### ##### ##### If other changes are made to this file, you ##### ##### are on your own. ##### ##### ##### ############################################################ ############################################################

################################################################################ # Localizations: # ################################################################################ # # # While this configuration file can be used unmodified, it may be # # appropriate to make some or all of the following changes to this # # configuration file to incorporate local information or preferences. # # # # Detailed descriptions of sendmail.cf syntax and complete list of # # the configuration options can be found in the documentation. # # # # Use the Nameserver (option I): # # # # If this host is using the domain nameserver, the I option should # # be set. In most cases, sendmail will be able to detect whether # # the nameserver is in use and will automatically do the right # # thing. However, in some cases it will incorrectly appear to # # sendmail as though the nameserver is not being used, for example # # if the nameserver has not finished loading its data and is not yet # # responding to queries. If this host normally uses the nameserver, # # messages should be deferred when the nameserver is not running. # # # # If the I option is set, if an MX record lookup or gethostbyname() # # call fails because the nameserver is not running, sendmail will # # defer the message. # # # # If the I option is not set, if an MX record lookup fails, sendmail # # will assume that the nameserver is not being used, and that there # # are no MX records, and try to connect directly to the host. If a # # host name lookup fails, sendmail will assume that there is no # # entry for the host and return an error. # # # # By default, the I option is not set. To set it, uncomment the # # line: # # # # # OI # # # # Site Hiding (macro Y): # # # # It may be desirable to "hide" the name of a host generating SMTP # # mail, so that replies need not be directed to the particular host # # on which the message originated. This simplifies moving a user's # # mail home from one host to another, and gives the appearance of # # mail being generated by a unified organization rather than a # # collection of hosts. # # # # By default the sender of a message routed via SMTP is identified # # with the header line: # # # # From: Full Name <user@host> # # # # where "host" is the canonical name of the local host (macro w). # # # # If the macro Y is defined, the value of macro Y will be appended # # instead of the local host name. The macro Y would typically be # # defined either as the name of a local mail hub, or as the local # # domain name. Although the name need not be the name of an actual # # host, this scheme requires that some host recognize the name and # # be able to route mail to the originating user. # # # # For example, to identify SMTP mail from the local host as # # originating from the domain poo.bah.edu, Y should be defined by # # replacing the line: # # # # # DY # # # # with: # # # # DYpoo.bah.edu # # # # An outgoing SMTP message from user "fred" at the host "burb" # # would have the From: header line: # # # # From: Fred User <fred@poo.bah.edu> # # # # Assume that the host "porpoise.poo.bah.edu" is to accept and # # forward mail for the domain poo.bah.edu. In order for users at # # other hosts to reply to such messages, there are two things that # # must be done: # # # # 1) Replying hosts must be able to map the name poo.bah.edu to an # # internet address or MX record. # # # # 2) Some host must be prepared to recognize mail addressed to # # "user@poo.bah.edu" as local, and be able to route such mail # # appropriately. # # # # To satisfy 1), the nameserver for the domain bah.edu must have # # either an MX record for the name "poo" directing its mail to the # # host porpoise.poo.bah.edu, or an address record mapping the name # # "poo" to an internet address belonging to porpoise.poo.bah.edu. # # Do not make "poo.bah.edu" a CNAME for porpoise.poo.bah.edu, # # because in that case a recipient may canonicalize the sender # # address "user@poo.bah.edu" to "user@porpoise.poo.bah.edu", which # # defeats the purpose of site hiding. For the same reason, if a # # replying host uses /etc/hosts or NIS (formerly known as Yellow # # Pages) to do host name to address mapping, the entry for # # poo.bah.edu should be a separate line, not a host name alias. # # # # To satisfy 2), on porpoise, the name "poo.bah.edu" must be added # # to class w (see below), and there must be mail aliases for all # # users on systems with macro Y defined as above. For example: # # # # fred: fred@burb.poo.bah.edu # # # # Aliases for Local Host (class w): # # # # This configuration will automatically recognize that mail to users # # at the local host or any of its host name aliases or CNAMEs should # # be delivered locally. Other host names that you wish to recognize # # as local can be added to class w as either a simple class # # definition (Cw) or a file class (Fw). Any names added to class w # # must be canonical names. # # # # For example, by default, only the server cnode of an HP-UX cluster # # runs the sendmail daemon, and mail from the clients is sent out # # with headers indicating that it originated on the server. # # # # However, you might want the server also to accept mail addressed # # to users at the clients. You could have nameserver MX records # # directing mail for the clients to the server, and make the server # # recognize the clients' host names as local. If the clients' names # # are ick, ack, and ock in the domain urk.com, the class w could be # # augmented as follows: # # # # Cw ick.urk.com ack.urk.com ock.urk.com # # # # Message-ID Header Field # # # # Associating a unique Message-ID header line with every message can # # be useful for tracing messages through the mail system. This is # # not the default because it makes the syslog file grow 50% faster. # # If the configuration file line: # # # # # H?M?Message-Id: <$t.$i@$w> # # # # is uncommented, sendmail will generate a Message-ID header line # # for each message it routes that does not already have one. The id # # contains the date (GMT), in the form YYMMDDhhmm, the queue ID # # associated with the message on the local host, and the local host # # name. # # # # In any case, if an incoming message already has a Message-ID # # header line, sendmail will preserve this line. # # # # Postmaster Copy (option P): # # # # If this option is set to a valid address, when an undeliverable # # message is mailed back, a copy of the message header (but not the # # message body) is delivered to the PostMasterCopy address. It is # # suggested that this address be "Postmaster" since RFC 822 requires # # that there be a valid Postmaster address on all mail systems, and # # since sendmail also attempts to deliver undeliverable error return # # messages to Postmaster. # # # # Postmaster should be aliased locally to the (local or remote) # # address of the person responsible for mail system administration. # # # # To enable this feature, uncomment the line: # # # # # OPPostmaster # # # # If desired, replace "Postmaster" with the appropriate address. # # # # Dumb UUCP Hosts (class G): # # # # If your host has UUCP connections to hosts running "dumb", # # i.e. non-RFC 822 compatible, UUCP mailers, you should define the # # class G as a list of these hosts. This will cause UUCP mail to # # these hosts to be sent via the dumbuucp mailer rather than the # # normal uucp mailer. Since "dumb" mailers will not add their host # # names to the return path in the From: header field, the dumbuucp # # delivery agent deletes From: header fields from mail for such # # hosts. In most cases the mail system on the host where final # # delivery is done will be able to generate a correct return path # # from other information in the message header. # # # # For example, if your host has UUCP connections to dumb UUCP # # mailers on hosts rrgh and feh, the class G should be defined, # # on the line beginning with CG, as follows: # # # # CGrrgh feh # # # # Trusted Users (T): # # # # If other hosts login to your host to perform UUCP mail transfers, # # the login ids used by these systems must be defined as trusted # # users. The login id "uucp" is already defined as a trusted user. # # If necessary, add lines of the form: # # # # Tusername # # # # to the Trusted Users section of this file (lines beginning with T). # # # # Logging Level (option L): # # # # Logging level determines the classes of events which will be # # logged by sendmail in /usr/spool/mqueue/syslog. By default the # # log level is 10, which reports successful deliveries (and the # # mailer and host used for delivery), queue daemon startup, alias # # database rebuilds, and various errors. More detailed information # # is reported with higher log levels. In particular, log level 11 # # reports the MX host (if any) and internet address to which mail # # was delivered. Refer to the documentation for details. # # # # Note that log level also affects the information reported by # # sendmail -bv. At log level 10 and higher, sendmail also reports # # the mailer and host that would be used for addresses that are # # "deliverable." # # # # The option L is defined on the line beginning with OL. # # # # Delivery Mode (option d): # # # # The default delivery mode is "background": the user agent # # invoking sendmail will return immediately, and sendmail will route # # the mail in the background. Other options are "interactive": # # sendmail will not return control to the program invoking it until # # the mail has been routed; and "queue": sendmail will put the # # message in the mail queue and a sendmail queue process will route # # the message later. Delivery mode is defined on the line beginning # # with Od. # # # # Error Reporting Mode (option e): # # # # The default error reporting mode is "p": if sendmail detects an # # error before it finishes sending a message, error messages are # # output to stdout; if errors occur later they are mailed back. # # Other options are: "w": if the sender is logged in, any error # # messages are written to the sender's terminal, otherwise they are # # mailed back; "m": error messages are always mailed; and "q": no # # error messages. Error reporting mode is defined on the line # # beginning with Oe. # # # # Read Timeout (option r): # # # # If the program transmitting a message to sendmail hangs, or if an # # SMTP peer goes down, sendmail's read will time out after this # # interval. RFC 1123 section 5.3.2 discusses appropriate values for # # this timeout. Refer to the sendmail documentation for the syntax # # for specifying time intervals. The read timeout is defined on the # # line beginning with Or. # # # # Queue Timeout (option T): # # # # Messages in the mail queue which sendmail has been unable to # # deliver for this amount of time will be returned to the sender as # # undeliverable. Refer to the documentation for the syntax for # # specifying time intervals. Queue timeout is defined on the line # # beginning OT. # # # # Queue-Only Load Average (option x): # # # # In order to limit load on a very busy system, sendmail can be # # configured to queue up low priority messages rather than attempt # # delivery immediately if the five-minute load average is greater # # than some integer value, by default 8. This value is defined on # # the line beginning Ox. # # # # Refuse-Connections Load Average (option X): # # # # In order to limit load on a very busy system, the sendmail daemon # # can be configured not to accept SMTP connections if the five- # # minute load average is greater than some integer value, by # # default 12. This value is defined on the line beginning Ox. # # # ################################################################################

################################################################################ # Routing Options: # ################################################################################ # # # The supported routing options are described below. Options for # # routing SMTP mail, UUCP mail, X.400 mail, and OpenMail mail are # # described. # # # # To implement any of these options, edit a copy of this file # # according to the instructions for that option. With minor # # exceptions, noted where appropriate, the options are independent # # of each other; you can implement any of them or none of them. # # # # Some of these options require that you have installed and # # configured other software not part of the ARPA/9000 product. # # # # # # Operator precedence: # # # # It is generally agreed that mixed addresses, being ambiguous, are # # abhorrent. This configuration file interprets address operators # # in the order '@', '!', '%'. # # # # Changes to this precedence are not supported! # # # # Mixed addresses are resolved as follows: # # # # Address Mailer Host User Destination # # ------- ------ ---- ---- ----------- # # user%hostA@hostB tcp hostB user%hostA@hostB user@hostA # # hostA!user@hostB tcp hostB hostA!user@hostB hostA!user # # hostA!user%hostB uucp hostA user@hostB user@hostB # # # ################################################################################ # SMTP Mail Routing: # ################################################################################ # # # By default, all mail to addresses of the form "user@host" will be # # routed to "host" using the SMTP protocol over TCP/IP. If the # # nameserver is in use, an MX record may direct sendmail to route # # mail for that host to some other host acting as a "mail exchanger" # # for the host in the recipient address. If there is no MX record # # for the host name, gethostbyname(3n) must be able to return an # # internet address for the host or else the delivery will fail. # # # # You can arrange to mail directly only to certain hosts. Mail to # # other hosts can either be rejected as an error, or be passed to a # # "relay" host for delivery. # # # # Direct SMTP connection within local domain only: # # # # This option makes sense only if your site uses internet domain # # style host names. You can define macro L as the name of the # # "local domain" and mail directly only to hosts whose canonical # # names end with that name. For example, if your local domain is # # "envy.sins.com", you might define macro L as "envy.sins.com" and # # define an SMTP relay, in which case sendmail would send directly # # to "user@porch.envy.sins.com" but relay "user@foyer.pride.sins.com". # # Alternatively, if your host is on a closed subnet, you might # # define macro L as "sins.com" and only relay mail (through a host # # with an interface on an open subnet as well as on your closed # # subnet) to domains outside sins.com . # # # # To route only to the local domain, first define macro L. For # # example, to route directly to hosts in the domain sins.com, define # # macro L, on the line beginning DL, as follows: # # # # DLsins.com # # # # Then uncomment the line in ruleset 0 following the comment: # # # # # connect to hosts in local domain # # # # Finally, comment out the line in ruleset 0 following the comment: # # # # # try to connect to any host for user@domain # # # # Direct SMTP connection to hosts in class S only: # # # # You can define a file class S of hosts to connect to directly. # # This option does not make much sense if your host runs the # # nameserver or NIS (formerly called Yellow Pages), since it # # requires that you keep a static table up to date. An internal # # hash table is generated from the file when the configuration file # # is frozen or, if no frozen configuration file is in use, when # # sendmail starts up. Therefore, if the file from which the class # # is generated changes, the configuration file should be re-frozen # # and the sendmail daemon killed and restarted. # # # # The file from which this class is defined (by default # # /etc/hosts.smtp) should contain only host names to which your host # # can connect via TCP, as the first word on each line. It would be # # appropriate for the file to include host name aliases as well as # # official host names, and to exclude hosts that do not run an SMTP # # server. # # # # The file can contain internet domain style names. The current # # HP-UX version of sendmail can match multi-token names to class # # members. # # # # To define file class S, first uncomment the line defining class S # # from /etc/hosts.smtp, following the comment: # # # # # class S defines hosts to which you connect directly for SMTP mail # # # # Then uncomment the line in ruleset 0 following the comment: # # # # # connect to hosts in class S # # # # Finally, comment out the line in ruleset 0 following the comment: # # # # # try to connect to any host for user@domain # # # # Direct SMTP connection to nobody: # # # # This option makes sense only if an SMTP relay is also defined. A # # host (for example a single user workstation) may wish to send all # # SMTP mail through a relay. To arrange this, comment out the line # # in ruleset 0 following the comment: # # # # # try to connect to any host for user@domain # # # # Note that this option is not compatible with options 1 or 2 above. # # # # SMTP relay: # # # # If you are limiting direct SMTP connections as described above, # # by default mail to hosts outside the limits will be returned with # # an error. If you can connect to another host with wider network # # connectivity than your host has, you can use that host as an SMTP # # relay. Courtesy suggests that you get permission from the # # administrator of that host before relaying mail through it. # # # # Any host name defined as a relay to be reached via SMTP must be an # # official host name; in a domain naming environment this must be a # # fully qualified domain name. The canonicalization operator $[ $] # # is not applied to relay names. # # # # To set up an SMTP relay, define the macro S, on the line beginning # # DS, as the host name (not path) of the relay host. For example, # # if you wish to relay through the host blab.bub.edu, define S as # # follows: # # # # DSblab.bub.edu # # # # Then uncomment the line in Ruleset 0 following the comment: # # # # # pass unresolved SMTP addresses to the SMTP relay # # (don't relay source routes) # # # # Note that if you are not limiting direct SMTP connections in some # # way, SMTP mail cannot be relayed. # # # ################################################################################ # UUCP Mail Routing: # ################################################################################ # # # By default, mail to addresses of the form "host!user" is routed to # # the uucp (or dumbuucp) mailer only if "host" is in the class U, # # generated from the output of uuname(1). Addresses of this form # # referring to other host names are treated as errors. # # # # The following UUCP routing options are supported: # # # # pathalias external nameserver for UUCP: # # # # You can maintain a pathalias database to provide sendmail with # # information on how to route UUCP mail to hosts to which your host # # does not have a direct UUCP connection. This routing information # # is generated by pathalias(1m). Mkuupath(1m) creates a hashed # # database from the routing information, and uupath(1m) is used to # # access the database. # # # # To make sendmail use uupath, first set up the database as # # described above. Then uncomment the three lines in Ruleset 0 # # following the comment: # # # # # try to get a path to an unresolved UUCP address # # from pathalias nameserver # # # # UUCP relay (via UUCP): # # # # If your host has a UUCP path to another host with wider UUCP # # connectivity than your host has, it may be appropriate to route # # UUCP mail to hosts to which your host cannot connect through # # this other host, which will attempt to relay messages to their # # final destination. Courtesy suggests that you get permission from # # the administrator of that host before relaying mail through it. # # # # To implement UUCP relaying via UUCP, first define the macro U, on # # the line beginning DU, as either the relay host name or the path # # to the relay host. # # # # For example, if you wish to relay through the host pzzz, via the # # path rrgh!frr!feh!pzzz , define U: # # # # DUrrgh!frr!feh!pzzz # # # # If you have a direct UUCP connection to pzzz, define U: # # # # DUpzzz # # # # After defining the UUCP relay, uncomment the three lines in # # Ruleset 0 following the comment: # # # # # pass unresolved UUCP addresses to the UUCP relay (via UUCP) # # # # UUCP relay (via SMTP): # # # # If you can mail via SMTP to the host you wish to use as a UUCP # # relay, define the macro W, on the line beginning DW, as the name # # of the UUCP relay host. # # # # Note that in this case, the macro W must be a single host name, # # not a path. Note also that the name of any host defined as a # # relay to be reached via SMTP must be an official host name; in a # # domain naming environment this must be a fully qualified domain # # name. The canonicalization operator $[ $] is not applied to relay # # names. # # # # For example, if domain names are not in use at your site, and # # if the relay host's official name is pzzz, define W: # # # # DWpzzz # # # # Then uncomment the line in Ruleset 0 following the comment: # # # # # pass unresolved UUCP addresses to the UUCP relay (via SMTP) # # # # Note that there is some risk of generating ambiguous (mixed) # # addresses in message headers using this type of relaying, if you # # are passing mail to hosts whose mail configuration is not under # # your control. This may cause some messages to be unreplyable. # # # # UUCP to X.400 gateway # # # # By default, mail from an X.400 user or gateway via UUCP may not be # # replyable. This is due to uucp interpreting the '/' in the name as # # implying a file transfer. # # # # If you are using X.400 or OpenMail on this machine, and have UUCP # # links from this machine, then apply the following changes: # # # # Uncomment the line in Ruleset 6 following the comment: # # # # # Recognize mail from uucp for x400 user on this system # # # # Uncomment the line in Ruleset 13 following the comment: # # # # # enable uucp recipient to reply to remote x400 sender # # # # and uncomment the line in Ruleset 13 following the comment: # # # # # enable uucp recipient to reply to local x400 sender # # # # This works by adding an extra host name 'hpx400' to the route back # # to this system; this name is stripped by the line in Ruleset 6. # # # # Note that this will mean that a machine called 'hpx400' will not be # # reachable from this machine via a direct UUCP connection. # # # # # ################################################################################ # X.400 Mail Routing: # ################################################################################ # # # By default, mail to X.400 style addresses will be rejected as an # # error. The following options permit routing X.400 mail to the # # X.400/9000 product running on this host or a remote host. # # # # X.400 mail via X.400/9000 delivery agent on this host: # # # # If you have installed the X.400/9000 X.400 delivery agent # # (/usr/lib/x400/x4mailer) on this host, you must enable sendmail to # # route X.400 mail to this mailer. Uncomment the line in Ruleset 0 # # following the comment: # # # # # resolve X.400 mail: local host is X.400 gateway # # # # For example, if the name of the local host is "buh", and sendmail # # is configured as described above, it would route mail to the # # address User_Joe//SomeOrg/US/TELEMAIL////HP@buh to the X.400 # # delivery agent for further routing through the X.400 network. # # # # See the X.400/9000 documentation for a complete explanation of # # X.400 style addresses. # # # # The X.400 receiving agent, also implemented by /usr/lib/x400/x4mailer, # # will be able to hand incoming messages to sendmail for further # # routing without any changes to the sendmail configuration. # # # # X.400 Relay (X.400/9000 delivery agent on a remote host): # # # # If the X.400/9000 X.400 delivery agent runs on a different host, # # for example, "farfel", sendmail on farfel must be configured to # # route X.400 mail to the X.400 delivery agent as described above. # # Sendmail on the local host would route mail addressed, for # # example, to User_Joe//SomeOrg/US/TELEMAIL////HP@farfel to farfel # # via SMTP, and sendmail on farfel would hand the mail to the X.400 # # delivery agent for routing through the X.400 network. This would # # require no change in the local host's sendmail configuration. # # # # So that users need not know which remote host is the X.400 # # gateway, sendmail can be configured to route mail to X.400 # # addresses via a designated X.400 gateway automatically. Define # # the macro X, on the line beginning DX, as the name of (not a path # # to) the X.400 gateway host. The X.400 relay must be accessible to # # this host via SMTP and must be defined as an official host name. # # # # In a domain naming environment this must be a fully qualified # # domain name. The canonicalization operator $[ $] is not applied # # to relay names. # # # # For example, if official name of the X.400 gateway is farfel, # # define the macro X as follows: # # # # DXfarfel # # # # Then uncomment the line following the comment: # # # # # resolve X.400 mail: remote host is X.400 gateway # # # # If the local host is named "buh", mail addressed to: # # # # User_Joe//SomeOrg/US/TELEMAIL////HP@buh # # # # will automatically be relayed to the X.400 delivery agent on # # farfel. # # # # See the X.400/9000 documentation for a complete explanation of # # X.400 style addresses. # # # ################################################################################ # OpenMail Routing: # ################################################################################ # # # By default, mail to OpenMail style addresses will be rejected as an # # error. The following options permit routing OpenMail and X.400 mail # # to the OpenMail product running on this host or a remote host. # # # # OpenMail to OpenMail delivery agent: # # # # If you have installed the OpenMail internal delivery agent # # /usr/openmail/bin/xport.in on this host, you must enable sendmail # # to route mail from other OpenMail systems to local OpenMail users # # via this mailer. Uncomment the line in Ruleset 0 following the # # comment: # # # # # resolve mail to OpenMail from remote OpenMail system # # # # OpenMail to X.400 delivery agent: # # # # If you have installed the OpenMail X.400 interface option # # (/usr/openmail/bin/x400.out) on this host, you must enable # # sendmail to route mail from OpenMail users to the X.400 network # # via this mailer. Uncomment the line in Ruleset 0 following the # # comment: # # # # # resolve mail to X.400 from OpenMail # # # # OpenMail delivery agent on this host: # # # # If you have installed the OpenMail delivery agent, # # /usr/openmail/bin/unix.in, on this host, you must enable sendmail # # to route mail to OpenMail users via this mailer. Uncomment the # # line in Ruleset 0 following the comment: # # # # # resolve mail to OpenMail: local host is OpenMail gateway # # # # For example, if the name of the local host is "warsh", and # # sendmail is configured as described above, it would route mail to # # the address User_Joe/SomeOrgUnit@warsh to the OpenMail delivery # # agent for routing through the OpenMail network. # # # # See the OpenMail documentation for a complete explanation of # # OpenMail style addresses. # # # # If the sendmail configuration has not been changed to pass X.400 # # messages to X.400/9000, then the above change will also cause X.400 # # messages to be passed to OpenMail. For example, the address # # User_Joe//SomeOrg/US/TELEMAIL////HP@warsh would be passed to the # # OpenMail delivery agent for further routing through the X.400 # # network. # # # # The OpenMail receiving agent will be able to hand incoming messages # # to sendmail for further routing without any changes to the # # sendmail configuration. # # # # OpenMail Relay (OpenMail delivery agent on a remote host): # # # # If the OpenMail delivery agent runs on a different host, for # # example, "tortue.ordinary.com", sendmail on tortue must be # # configured to route OpenMail mail to the OpenMail delivery agent # # as described above. Sendmail on the local host would route mail # # addressed, for example, to User_Joe/SomeOrgUnit@tortue to tortue # # via SMTP, and sendmail on tortue would hand the mail to the # # OpenMail delivery agent for further routing through the OpenMail # # or X.400 networks. This would require no change to the local # # host's sendmail configuration. # # # # So that users need not know which remote host is the OpenMail # # gateway, sendmail can be configured to route mail to OpenMail # # addresses via a designated OpenMail gateway automatically. Define # # the macro Z, on the line beginning DZ, as the name (not path) of # # the OpenMail gateway host. The OpenMail relay must be accessible # # to this host via SMTP. # # # # In a domain naming environment this must be a fully qualified # # domain name. The canonicalization operator $[ $] is not applied # # to relay names. # # # # For example, if the official host name of the OpenMail gateway is # # tortue.ordinary.com, define the macro Z as follows: # # # # DZtortue.ordinary.com # # # # Then uncomment the line following the comment: # # # # # resolve mail to OpenMail: remote host is OpenMail gateway # # # # If the local host is named "warsh", mail addressed to: # # # # User_Joe//SomeOrg/US/TELEMAIL////HP@warsh # # # # will automatically be relayed to the OpenMail delivery agent on # # tortue.ordinary.com . # # # # See the OpenMail documentation for a complete explanation of # # OpenMail style addresses. # # # ################################################################################

############################################################ ### Localizable Options ### ############################################################

# logging level OL10

# defer messages to [IPC] mailers if the nameserver is not running # OI

# delivery mode Odbackground

# error reporting mode Oep

# read timeout Or5m

# queue timeout interval OT3d

# load average at which low priority messages are queued rather than delivered Ox8

# load average at which daemon refuses to accept connections OX12

# postmaster address which will receive headers of undeliverable messages # OPPostmaster

############################################################ ### Other Options ### ############################################################ ### ### ### HP recommends that these options not be changed. ### ### ### ############################################################

# queue directory OQ/usr/spool/mqueue

# Save those UN*X From_ lines Of

# location of alias file OA/usr/lib/aliases

# temporary file mode OF0600

# default UID Ou1

# default GID Og1

# location of help file OH/usr/lib/sendmail.hf

# recognize old style as well as new style lists in headers Oo

# statistics file OS/usr/lib/sendmail.st

# wait up to 5 minutes for completion of alias db initialization Oa5

# queue up everything before starting transmission Os

# send to me, too if in alias expansion Om

# if the load average exceeds the x option limit, divide the q option # value by the difference (plus one) between the current load average and # the x option limit to find the maximum priority value (i.e. minimum # priority) of messages to send immediately. Oq10000

# value added to message priority per recipient Oy1000

# message precedence factor Oz1800

# value added to message priority per queue run OZ9000

############################################################ ### Configuration-Specific Macro and Class Definitions ### ############################################################

# site hiding: local sender identified as user@my_site instead of user@my_host DYinformatik.uni-kiel.de

# class w defines aliases for the local host Cwrigel.informatik.uni-kiel.d400.de rigel.informatik.uni-kiel.de informatik.uni-kiel.d400.de informatik.uni-kiel.de

# macro L defines the "local domain" to which you connect directly for SMTP mail DLinformatik.uni-kiel.de

# class S defines hosts to which you connect directly for SMTP mail # FS/etc/hosts.smtp %s

# class U defines known direct UUCP connections # FU|/usr/bin/uuname %s

# UUCP relay for unresolved ! addresses (via UUCP) DU

# UUCP relay for unresolved ! addresses (via SMTP) DWgutemine

# SMTP relay for unresolved @ addresses DSgutemine

# X.400 relay if X.400 delivery agent is not local DX

# OpenMail relay if OpenMail delivery agent is not local DZ

# dumb (not RFC 822 compatible) UUCP hosts CG

# pathalias external nameserver program DP/usr/bin/uupath

############################################################ ### Configuration Version ### ############################################################

DV16.2

############################################################ ### Required Macro Definitions ### ############################################################

## Local domain name Dminformatik.uni-kiel.de

# official domain name of this host for SMTP Dj$w.$m

# my name DnMAILER-DAEMON

# UNIX header format DlFrom $g $d

# delimiter (operator) characters Do.:%@!^=/[]|

# format of a total name Dq$?x$x <$g>$|$g$.

# SMTP banner De$j HP Sendmail ($v/$V) ready at $b

############################################################ ### Message Precedences ### ############################################################

Pfirst-class=0 Pspecial-delivery=100 Pjunk=-100

############################################################ ### Trusted Users ### ############################################################

Troot Tdaemon Tuucp Tx400

############################################################ ### Header Field Formats ### ############################################################

HReceived: $?sfrom $s $.by $j$?r with $r$. ($v/$V) id $i; $b HResent-Date: $a HDate: $a HResent-From: $q H?F?From: $q H?x?Full-Name: $x H?P?Return-Path: <$g> HSubject: # HPosted-Date: $a # HReceived-Date: $b # HResent-Message-Id: <$t.$i@$w> # H?M?Message-Id: <$t.$i@$w>

############################################################ ############################################################ ##### ##### ##### Address Rewriting Rulesets ##### ##### ##### ############################################################ ############################################################

############################################################ ### Ruleset 1 - Sender Field Pre-rewriting ### ############################################################

S1 R$+ $:$>6$1 strip my_host and canonicalize R$*<@$+>$* $@$1<@$2>$3 already has (remote) domain R$+/$*/$*/$*/$* $:$1/$2/$3/$4/$5<@$w> @my_domain on local X.400 sender

############################################################ ### Ruleset 2 - Recipient Field Pre-rewriting ### ############################################################

S2 R$+ $:$>6$1 strip my_host and canonicalize R$*<@$+>$* $@$1<@$2>$3 already has (remote) domain R$+/$*/$*/$*/$* $:$1/$2/$3/$4/$5<@$w> @my_domain on local X.400 recpt

############################################################ ### Ruleset 3 - Address Internalization ### ############################################################

S3 # handle "From:<>" special case R<> $@$n null address => MAILER-DAEMON

# basic textual canonicalization R$*<$*<$+>$*>$* $1<$2$3$4>$5 strip <> from inside R$*<$+>$* $2 strip phrase and <> R$+ at $+ $1@$2 RFC 733 at => RFC 822 @

# source route <@a,@b,@c:user@d> syntax to internal form <@a>:@b:@c:user@d R@$+,$+ @$1:$2 change all , to : R@$+.UUCP:$+ $@<@$1.UUX>:$2 .UUCP pseudo-domain in route R@$+:$+ $@<@$1>:$2 focus on next hop

# The @ delimiter takes precedence. Leave this alone. R$+@$+ $:$1<@$2> focus on domain R$+<$+@$+> $1$2<@$3> move gaze right R$+<@$+.UUCP> $@$1<@$2.UUX> .UUCP pseudo-domain R$+<@$+> $@$1<@$2> already in internal form

# The ! delimiter. R$+^$+ $1!$2 convert obsolete ^ to ! R$+!$+ $@$2<@$1.UUX> host!user => user<@host.UUX>

# % is a low precedence @. R$+%$+ $:$1<%$2> focus on domain R$+<$+%$+> $1$2<%$3> move gaze right R$+<%$+> $1<@$2> user%host => user@host R$+<@$+.UUCP> $@$1<@$2.UUX> .UUCP pseudo-domain

# miscellaneous cleanup R$+@ $@$1 user@ => user R$+% $@$1 user% => user

############################################################ ### Ruleset 4 - Final Output Post-rewriting ### ############################################################

S4 # special cases R$+<@> $1 null domain

# UUCP must always be presented as host!user R$+<@$+.UUX> $@$2!$1 user<@host.UUX> => host!user

# UUCP hop in source route R<@$+.UUX>:$+ <@$1.UUCP>:$2 .UUX in source route => .UUCP R<@$+>:$+.UUX$+ <@$1>:$2.UUCP$3 .UUX in source route => .UUCP

# defocus R$*<$+>$* $1$2$3 remove internal form <>

# don't change %s or @s in mixed addresses R$+!$+@$+ $@$1!$2@$3 don't interpret it any further R$+!$+%$+ $@$1!$2%$3 don't interpret it any further

# restore source route to external form R@$+:$+:$+ @$1,$2:$3 all but last : => , R@$+ $@<@$1> add <> to protect the ,s

# should be exactly one @ in user@domain style address R$+%$+ $1@$2 all % => @ R$+@$+@$+ $1%$2@$3 all but last @ => %

############################################################# ### Ruleset 0 - {Delivery_Agent, Host, User} Resolution ### #############################################################

S0 # recognize local host or canonicalize R$+ $:$>6$1 anything to ruleset 6 once

# resolve domain-literals (numeric internet addresses) not canonicalized above R$*<@[$+]> $#tcp$@[$2]$:$1@[$2] user@internet address R<@[$+]>:$* $#tcp$@[$1]$:@[$1]:$2 internet address in source route

# resolve mail to dumb UUCP hosts R$+<@$=G.UUX> $#dumbuucp$@$2$:$1 user@dumb_host.UUX

# resolve mail to other known UUCP hosts R$+<@$=U.UUX> $#uucp$@$2$:$1 user@host.UUX R<@$=U.UUX>:$+ $#uucp$@$1$:$2 @host.UUX in source route

# try to get a path to an unresolved UUCP address from pathalias nameserver # R$+<@$-.UUX> $:$>5$2!$1 uupath pathalias routing # R$+<@$=G.UUX> $#dumbuucp$@$2$:$1 to dumb UUCP host # R$+<@$=U.UUX> $#uucp$@$2$:$1 to other known UUCP host

# pass unresolved UUCP addresses to the UUCP relay (via SMTP) R$+<@$+.UUX> $#tcp$@$W$:$1<@$2.UUCP> to UUCP relay via SMTP

# pass unresolved UUCP addresses to the UUCP relay (via UUCP) # R$+<@$+.UUX> $:$>3 $U!$2!$1 re-internalize with $U # R$+<@$=G.UUX> $#dumbuucp$@$2$:$1 to dumb UUCP relay # R$+<@$+.UUX> $#uucp$@$2$:$1 to UUCP relay

# other UUCP addresses are in error R$*<@$+.UUX>$* $#error$:unable to route to UUCP host name $2

# select hosts to connect with directly for SMTP mail:

# connect to hosts in class S # R$+<@$=S> $#tcp$@$2$:$1<@$2> user@domain

# connect to hosts in local domain # R$+<@$+.$L> $#tcp$@$2.$L$:$1<@$2.$L> user@host.localdomain

# try to connect to any host for user@domain # R$+<@$+> $#tcp$@$2$:$1<@$2> user@domain

# try to connect to any host for source route # R<@$+>:$+ $#tcp$@$1$:<@$1>:$2 source route # wib R<@$+>:$+ $#tcp$@$S$:<@$1>:$2 source route

# pass unresolved SMTP addresses to the SMTP relay (don't relay source routes) R$+<@$+> $#tcp$@$S$:$1<@$2> user@domain to SMTP relay

# other SMTP addresses are in error R$*<@$+>$* $#error$:unable to route to domain $2

# file names, programs, and :include: must resolve to local mailer; # explicitly distinguish these from X.400 and OpenMail syntax R/$* $#local$:/$1 to absolute file path name R|$* $#local$:|$1 to a program R:include:$* $#local$::include:$1 to :include: list

# resolve X.400 mail: local host is X.400 gateway # R$+/$*/$*/$*/$* $#x400$@$w$:$1/$2/$3/$4/$5

# resolve X.400 mail: remote host is X.400 gateway # R$+/$*/$*/$*/$* $#tcp$@$X$:$1/$2/$3/$4/$5<@$X>

# resolve mail to OpenMail: local host is OpenMail gateway # R$+/$* $#openmail$@$w$:$1/$2

# resolve mail to OpenMail: remote host is OpenMail gateway # R$+/$* $#tcp$@$Z$:$1/$2<@$Z>

# by default, reject X.400 address as error R$+/$*/$*/$*/$* $#error$:X\.400 delivery agent not configured

# by default, reject OpenMail address as error R$+/$* $#error$:OpenMail delivery agent not configured

# resolve mail to OpenMail from remote OpenMail system # Ropenmail $#omxport$@$w$:openmail

# resolve mail to X.400 from OpenMail # Ropenmailx4 $#omx400$@$w$:openmailx4

# other addresses must resolve to local mailer in order for mail to Full.Name, # command line aliases, and quoted user names (\user) to be delivered.

# remaining names must be local R$+ $#local$:$1 name

############################################################ ############################################################ ##### ##### ##### Special Rulesets ##### ##### ##### ############################################################ ############################################################

############################################################ ### Ruleset 5 - Pathalias Nameserver ### ############################################################

S5 R$+ $:$<P$1 uupath pathalias routing R$+ $:$>3$1 re-internalize

############################################################ ### Ruleset 6 - Local Host Recognition ### ############################################################

S6 # RFC 822 does not permit hostnames to end in . R$*<@$*.>$* $1<@$2>$3 strip trailing .

# strip local host R$+<@$w> $>3$1 strip my_host and re-internalize R<@$w>:$+ $>3$1 strip my_host and re-internalize

# recognize local host in UUCP syntax R$+<@$k.UUX> $:$1<@$w> my_host in UUCP syntax # Recognize mail from uucp for x400 user on this system # R$+<@hpx400.UUX> $:$1<@$w> X.400 in UUCP syntax R<@$k.UUX>:$+ $:<@$w>:$1 my_host.UUCP in source route

R$*<@$+.UUX>$* $@$1<@$2.UUX>$3 don't canonicalize host.UUX

# canonicalize host and possibly recurse R$*<@$+>$* $:$1<@$[$2$]>$3 user@host or source route R$*<@$=w>$* $:$>6$1<@$w>$3 recurse if still to my_host

############################################################ ############################################################ ##### ##### ##### Mailer (Delivery Agent) Definitions ##### ##### ##### ############################################################ ############################################################

############################################################ ### local and program mailers ### ############################################################

Mlocal, P=/bin/rmail, F=DFMPlms, S=10, R=20, A=rmail -d $u Mprog, P=/bin/sh, F=DFMPlshu, S=10, R=20, A=sh -c $u

S10 #R$*<@$+.UUX> $@$1<@$2.UUX> don't modify UUCP address #R$*<@$+>$* $@$1<@$2>$3 already has domain #R$+ $:$1<@$w> add local domain to user

S20 #R$*<@$+.UUX> $@$1<@$2.UUX> don't modify UUCP address #R$*<@$+>$* $@$1<@$2>$3 already has domain #R$+ $:$1<@$w> add local domain to user

############################################################ ### SMTP TCP/IP mailer ### ############################################################

Mtcp, P=[IPC], F=CDFMXmu, S=11, R=21, E=\r\n, A=IPC $h

S11 #R$*<@$+.UUX> $@$2!$1<@$w> add local domain to UUCP address #R<@$+>:$* $@<@$w>:@$1:$2 add local domain to source route #R$+<@$+> $@$1<@$2> already has domain #R$+ $:$1<@$?Y$Y$|$w$.> add local domain

S21 #R$*<@$+>$* $@$1<@$2>$3 already has domain #R$+ $:$1<@$w> add local domain

############################################################ ### UUCP mailer ### ############################################################

Muucp, P=/usr/bin/uux, F=DFMUshu, S=13, R=23, A=uux - $h!rmail ($u)

S13 R$+<@$+.UUX> $@$2!$1<@$k.UUX> host!user => my_host!host!user R$+@$+<@$+> $1%$2<@$3> all but last @ => % # enable uucp recipient to reply to remote x400 sender # R$*/$*<@$+> $@hpx400!$1/$2%$3<@$k.UUX> user@host => my_host!hpx400!user%host R$+<@$+> $@$1%$2<@$k.UUX> user@host => my_host!user%host R<@$+>:$+ $@<@$k.UUCP>:@$1:$2 prepend @my_host.UUCP to route # enable uucp recipient to reply to local x400 sender # R$*/$* $@hpx400!$1/$2<@$k.UUX> user => my_host!hpx400!user R$+ $@$1<@$k.UUX> user => my_host!user

S23

############################################################ ### Dumb UUCP mailer ### ############################################################ ### UUCP for hosts running non-RFC 822 mailers ### ############################################################

Mdumbuucp, P=/usr/bin/uux, F=DMUshux, R=23, A=uux - $h!rmail ($u)

############################################################ ### X.400 mailer ### ############################################################

Mx400, P=/usr/lib/x400/x4mailer, F=CDMFmn, S=14, R=24, A=x4mailer -f $g $u

S14

S24

############################################################ ### OpenMail mailers ### ############################################################

Mopenmail, P=/usr/openmail/bin/unix.in, F=DFLMXmnu, S=15, R=25, A=unix.in

S15

S25

Momxport, P=/usr/openmail/bin/xport.in, F=LMn, A=xport.in $u

Momx400, P=/usr/openmail/bin/x400.out, F=LMn, A=x400.out $u

-----------------------------------------------------------------------

Hope this helps,

Claus Assmann

*********************** Begin New Message *********************** *********************** Begin New Message *********************** *********************** Begin New Message *********************** *********************** Begin New Message ***********************

Michael, Here is the sendmail.cf we use on HP w/stations (our mail hub is a SUN)

Cheers,

Richard Hellier

Cambridge Parallel Processing Ltd Centennial Court Easthampstead Rd Bracknell RG12 1YQ UK

Tel: +44 344 861024 Fax: +44 344 305544

---------- X-Sun-Data-Type: default X-Sun-Data-Description: default X-Sun-Data-Name: sendmail.cf.HP X-Sun-Content-Lines: 164

############################################################ ############################################################ ##### ##### ##### SENDMAIL CONFIGURATION FILE ##### ##### ##### ############################################################ ############################################################

############################################################ ##### ##### ##### Configuration Version ##### ##### ##### ##### @(#)$Revision: 2.0 $ ##### ##### ##### ##### Please change BOTH version numbers when a change ##### ##### is made. One is used by RCS, the other by ##### ##### Sendmail. ##### ##### ##### ############################################################

DV2.0 Lobotomized Client

############################################################ ############################################################ ##### ##### ##### Revision History at Cascade Corporation ##### ##### ##### ##### 1.0 -- 92/02/01 -- Scott Larsen ##### ##### Set up for message headers, ##### ##### Postmaster mail. ##### ##### ##### ##### 2.0 -- 92/03/18 -- Scott Larsen ##### ##### Completely lobotomized the client sendmail ##### ##### so that they just push mail off to the mail ##### ##### server, defined by macro "R" ##### ##### ##### ############################################################ ############################################################

# # Special macros # # SMTP login message (should never get to this, but just in case...) De$j HP Sendmail ($v/$V) ready at $b

# official hostname Dj$w

# my name DnMAILER-DAEMON

# Custom macros to ensure "From: user@host.domain" format Dg$f@$j Dq$?x$x $.<$g> HFrom: $q

# # Options # # no alias file OA

# deliver in background Odbackground

# temporary file mode OF0600

# default UID Ou1

# default GID Og1

# location of help file (should never get used) OH/usr/lib/sendmail.hf

# log level (verbose but common) OL10

# Assume headers may have space seperated names Oo

# CC to postmaster for errors (will actually get sent to mail router) OPPostmaster

# queue directory OQ/usr/spool/mqueue

# read timeout -- violates protocols Or2h

# no statistics file OS

# queue up everything before starting transmission Os

# default timeout interval OT3d

# # Local definition!!! # Mail routing host # DRmazama

# # Rewriting rules # # This rule just forwards everything to host $R S0 R$* $#ether$@$R$:$1

S1 R<$*> $1

S2 R<$*> $1

# Name Canonicalization

# Internal format of names within the rewriting rules is: # anything<@host.domain.domain...>anything # We try to get every kind of name into this format, except for local # names, which have no host part. The reason for the "<>" stuff is # that the relevant host name could be on the front of the name (for # source routing), or on the back (normal form). We enclose the one that # we want to route on in the <>'s to make it easy to find. # S3

R<$*> $1

# handle "from:<>" special case R<> $@@ turn into magic token

# basic textual canonicalization R$*<$+>$* $2 basic RFC822 parsing

# make sure <@a,@b,@c:user@d> syntax is easy to parse -- undone later R@$+,$+:$+ @$1:$2:$3 change all "," to ":" R@$+:$+ $@$>6<@$1>:$2 src route canonical

R$+:$*;@$+ $@$1:$2;@$3 list syntax R$+@$+ $:$1<@$2> focus on domain R$+<$+@$+> $1$2<@$3> move gaze right R$+<@$+> $@$>6$1<@$2> already canonical

# convert old-style names to domain-based names # All old-style names parse from left to right, without precedence. R$-!$+ $@$>6$2<@$1.uucp> uucphost!user R$-.$+!$+ $@$>6$3<@$1.$2> host.domain!user R$+%$+ $@$>3$1@$2 user%host

# # Mailer specifications # # All mailers talk SMTP Mlocal, P=[IPC], F=hmnsuX, A=IPC $h Mprog, P=[IPC], F=hmnsuX, A=IPC $h Mether, P=[IPC], F=hmnsuX, A=IPC $h

*********************** Begin New Message *********************** *********************** Begin New Message *********************** *********************** Begin New Message *********************** *********************** Begin New Message ***********************

Hello there, Well what I would suggest is that you lokk for a 'subsidiary.cf', that may have come as part of your sendmail distribution. If you have one, put that in place of your sendmail.cf on your HP's. Or if you have'nt, you have to get the sendmail.cf on the HP's to 'send all mail locally, to the mail host'. I would suggest you buy the O'Reilly & Assoc. Sendmail book; I've found it very useful! Hope that's of some help? ......................................................... Simon Hogg, Computer Services, Oxford Brookes University, Gypsey Lane, Headington, Oxford, OX3 0BP, UK.

T(44)0865483323, F(44)0865483073, E-mail sjh@brookes.ac.uk .............................................................. If Omar Sharif lived in Gateshead, he would'nt be Omar Sharif. .............................................................. *********************** Begin New Message *********************** *********************** Begin New Message *********************** *********************** Begin New Message *********************** *********************** Begin New Message ***********************

From: spandran@mailhost.to.ford.com

Hope this file helps you.

Good Luck

----- Begin Included Message -----

# SENDMAIL CONFIGURATION FILE FOR CLIENT MACHINES # Ford Truck configuration DDto.ford.com Dj$w.$D DMether DRmailhost.to.ford.com CRmailhost.to.ford.com Dm$R Cm$j DVSMI-4.1 DnMailer-Daemon DlFrom $g $d Do.:%@!^=/[] Dq$g$?x ($x)$. De$j Sendmail $v/$V ready at $b OR OA/etc/aliases Odbackground OD OF0600 Og1 OH/usr/lib/sendmail.hf OL9 Oo OPPostmaster OQ/usr/spool/mqueue Or15m OS/etc/sendmail.st Os OT3d Ou1 Pfirst-class=0 Pspecial-delivery=100 Pjunk=-100 T root daemon uucp H?P?Return-Path: <$g> HReceived: $?sfrom $s $.by $j ($v/$V) id $i; $b H?D?Resent-Date: $a H?D?Date: $a H?F?Resent-From: $q H?F?From: $q H?x?Full-Name: $x HSubject: H?M?Resent-Message-Id: <$t.$i@$j> H?M?Message-Id: <$t.$i@$j> HErrors-To: ########################### ### Rewriting rules ### ########################### S1

S2

S3

R$*<>$* $@@ turn into magic token R$*<$+>$* $2 basic RFC822 parsing R$*@$=j$* $1@$R R$*@$=w $1@$R R$*@$=w$* $1@$R

Mlocal, P=/usr/lib/sendmail, F=DFILMlmsuX, S=1, R=1, A=sendmail $n Mprog, P=/usr/lib/sendmail, F=DFILMmlsuX, S=1, R=1, A=sendmail $n Mether, P=[IPC], F=mDFMueX, S=1, R=1, A=IPC $h

S0 R$* $#ether $@$R $:$1

*********************** Begin New Message *********************** *********************** Begin New Message *********************** *********************** Begin New Message *********************** *********************** Begin New Message ***********************

From: SMTP%"kowal@ide.com"

Michael, if you are setting the HPs up to NFS mount the mail spool directory from your gateway, then here's a *very* simple sendmail.cf for the clients. It basically just forwards any mail to the machine "mailhost". We use it here for all of our machines except the mail gateway. No mail is delivered to the mail spool except from the mailhost. The sendmail.cf will strip the client name out of any mail address as well, to prevent mail loops.

If you use this sendmail.cf, you will have to make some changes to DD and CD, and perhaps DV and DR.

Let me know if you have questions.

Stephen

---- dumb sendmail.cf ---- cut here ------ ############################################################ ############################################################ ##### ##### SENDMAIL CONFIG FILE FOR "HIDDEN" IDE MACHINES ##### ##### This is a sendmail config file to use on local ide ##### machines. It basically just forwards any mail it ##### receives to mailhost for delivery. Some might call this ##### a "dumb" forwarder. I prefer "slow". :-) ##### ##### -Stephen Kowalczyk 4/30/90 ##### ##### P.S. Most of this stuff is ripped off ##### from somewhere else. ##### ############################################################ ############################################################

############################################################ ### local info ############################################################

# Getting my name straight # Dj$w

# My sendmail.cf version # DVide-1.0

# My major relay mailer # DMether

# My major relay host # DRmailhost

# My domain # DDide.com CDide.com

########################## ### Boilerplate Stuff ### ##########################

# Special macros #

# my name DnMAILER-DAEMON # UNIX header format DlFrom $g $d # delimiter (operator) characters Do.:%@!^=/[] # format of a total name Dq$?x$x <$g>$|$g$. # SMTP login message De$j Sendmail $v/$V ready at $b

################### ### Options ### ###################

# queue directory OQ/usr/spool/mqueue # location of alias file OA/etc/aliases # location of help file OH/usr/lib/sendmail.hf # status file -- none OS # default UID Ou1 # default GID Og1 # default delivery mode (deliver in background) Odbackground # (don't) connect to "expensive" mailers #Oc # rebuild the alias file automagically OD # temporary file mode -- 0600 for secure mail, 0644 for permissive OF0600 # log level OL9 # default messages to old style Oo # Cc my postmaster on error replies I generate OPPostmaster # read timeout -- violates protocols Or30m # queue up everything before starting transmission, for safety Os # default timeout interval OT3d

############################### ### Message precedences ### ###############################

Pfirst-class=0 Pspecial-delivery=100 Pjunk=-100

######################### ### Trusted users ### #########################

Troot daemon uucp

############################# ### Format of headers ### #############################

H?P?Return-Path: <$g> HReceived: $?sfrom $s $.by $j ($v/$V) id $i; $b H?D?Resent-Date: $a H?D?Date: $a H?F?Resent-From: $q H?F?From: $q H?x?Full-Name: $x HSubject: H?M?Resent-Message-Id: <$t.$i@$j> H?M?Message-Id: <$t.$i@$w>

########################### ### Rewriting rules ### ###########################

S3 R$*<$+>$* $2 R$*@$w $1 R$*@$w.$D $1 R$*!$w!$+ $1!$2 R$w!$+ $1 R$*@$* $@ $1@$2 R$+!$+ $@ $1!$2 R$+ $: $1 S0 R$+ $#$M$@$R$:$1

############################################################ ##### Local, Program, and Ether Mailer specification ############################################################

Mlocal, P=/bin/mail, F=rlsDFMmnP, S=10, R=20, A=mail -d $u Mprog, P=/bin/sh, F=lsDFMeuP, S=10, R=20, A=sh -c $u Mether, P=[IPC], F=msDFMuCX, S=11, R=21, A=IPC $h



This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:08:58 CDT