Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!cornell!parmelee From: parmelee@wayback.cs.cornell.edu (Larry Parmelee) Newsgroups: comp.mail.sendmail Subject: Re: Some basic questions on sendmail Message-ID: <32438@cornell.UUCP> Date: 25 Sep 89 12:33:57 GMT References: <444@excelan.COM> Sender: nobody@cornell.UUCP Reply-To: parmelee@wayback.cs.cornell.edu (Larry Parmelee) Organization: Cornell Univ. CS Dept, Ithaca NY Lines: 76 In article <444@excelan.COM> tran@excelan.COM (Tony Tran) writes: > Q1: what are the rule sets used to resolve: Attached below is a cheat sheet I created for myself a while back, explaining the various tranformations performed by the rulesets. > Q2: This host used to be named excelan. It is now "xlnvax.excelan.com" > (Fully qualified domain) with hostname being "xlnvax". > Question: Is there any way I can make my gateway host to append > "excelan" instead of "xlnvax" (as returned by gethostname) to Yes, it's possible. I would have the per-mailer rulesets associated with the UUCP mailer do the transformation: Pull off the internet form of the name and replace it with your uucp name. -Larry Parmelee parmelee@cs.cornell.edu cornell!parmelee Sendmail Ruleset Re-Writing overview 16-Mar-89 EF -> 3,0,2,r,4 -> (Save "@domains" for ruleset "D".) EF -> 3,1,4 -> ($f) -> 3,D,1,S,4 -> ($g) -> New EF ET -> 3,0,2,R,4 -> A/F -> SMTP delivery ? Yes: -> 3,D,2,R,4 -> New ET ^ v No: -> New ET +--- <------ <-----+ MF -> 3,D,1,S,4 -> New MF MT -> 3,D,2,R,4 -> New MT A/F == Aliasing and .forward file processing for Local addresses ($?) == Definition of $? macro. EF == Envelope "From:" address ET == Envelope "To:" address MF == Message From-type addresses MT == Message To-type addresses R == Mailer (determined per ET) "Recipient" ruleset r == Mailer (determined from EF) "Recipient" ruleset S == Mailer (determined per ET) "Sender" ruleset D == Application of "@Domains" saved from the EF, if EF mailer flag 'C' is given and the address doesn't already have @domains applied. Message headers associated with From-type addresses: Errors-To: Resent-From: Return-Receipt-To: From: Resent-Reply-To: Sender: Reply-To: Resent-Sender: Message headers associated with To-type addresses: To: Cc: Bcc: Resent-To: Resent-Cc: Resent-Bcc: Approximate High-level sendmail ruleset processing algorithm: The actual process is a bit more complicated; Showing that here would only confuse things... 1.) Process EF for "@domains" and upto ($f). 2.) Process all ETs upto the A/F point (including additional ETs resulting from the A/F processing of the local addresses) producing a list of ET address 3-tuples; (mailer, host, user). 3.) Foreach ET address 3-tuple: a.) Define $h and $u macros: host -> ($h), user ->($u) b.) Finish EF processing from $f yielding New EF for this ET. c.) Finish ET processing for this tuple yielding New ET. d.) Connect to mailer. e.) Do MF/MT processing as the message is written to the mailer. Notes: 1.) After ruleset 0 processing, only the "user" part is passed on to the other rulesets for further re-writing. 2.) It is often useful to think of a "mailer" as the network or transport mechanism being chosen for the next hop the message will take. -LCParmelee16-Mar-89 sendmail:5.61