Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!munnari!kre From: kre@munnari.oz (Robert Elz) Newsgroups: comp.mail.headers,comp.mail.uucp Subject: Re: more about autorouting Message-ID: <1402@munnari.oz> Date: Sat, 24-Jan-87 05:39:54 EST Article-I.D.: munnari.1402 Posted: Sat Jan 24 05:39:54 1987 Date-Received: Sat, 24-Jan-87 13:49:04 EST References: <14396@amdcad.UUCP> <4611@mit-eddie.MIT.EDU> <837@astrovax.UUCP> Organization: Comp Sci, Melbourne Uni, Australia Lines: 59 Xref: mnetor comp.mail.headers:102 comp.mail.uucp:176 In article <837@astrovax.UUCP>, wls@astrovax.UUCP (William L. Sebok) writes: > I have had severe problems writing a sendmail.cf that would properly handle > addresses of that form: > @host1,@host2,@host3:user@host4 > The basic problem is that the sendmail parser wants to take the above address > and break it apart at the commas. Sendmail only "breaks apart" addresses in the headers, and in the headers this form of address is illegal if not surrounded by angle brackets. If the user forgets to add them, the user has used an illegal address, and bouncing the mail is the right thing to do (it should bounce, as @host1 has no "local part", and so is illegal too). Mail received from other sites is either received via smtp, which has a single address in the Rcpt cmd (and its enclosed in < > anyway), or its handed to sendmail as a command line arg, in which case sendmail does not "break it apart". > For the strict RFC822 sites, those that don't understand !'s in an address, > the string of ! connected sitenames is turned into an RFC822 route. I have considered doing this at times, but I have been unable to convince myself that it is truly an invertible conversion. In particular, when the rfc822 only site send you back an address in route-addr form, and its addressed to a uucp (!) site, can you really assume that you can unravel the route-addr into a ! path, and be certain of not unraveling too far? I couldn't work out any safe way to guarantee this. If I can't guarantee to invert a transformation, I'm not about to make it. > When a ! route > is turned into RFC822 route it needs to be surrounded by angle brackets to > protect it from sendmail's parsing. However, the ruleset trying to do this > has no idea whether the original address was surrounded by angle brackets This is indeed a problem, and one that should be fixed. > The safest thing to do seemed to be to > have the ruleset put a set of angle brackets around it. Unfortunately, even if you could avoid the double << >> problem (which sendmail could easily arrange to do), this still doesn't necessarily generate a legal address. Anywhere a route-addr is used, there must also be a "phrase" in the address as well. Sendmail would need to invent this phrase in some cases, and inventing something rational isn't necessarily easy. > I don't know why the framers of RFC822 chose that form of syntax. Everything I have ever been able to ascertain suggests that the thought of having user level source routing was so repugnant to some of the rfc822 creators, that they deliberately made the syntax as foul as they could get away with, given that others were adamant that the facility had to be provided. Robert Elz seismo!munnari!kre kre%munnari.oz@seismo.css.gov <@seismo.css.gov:kre@munnari.oz.au>