Path: utzoo!attcan!telly!problem!compus!lethe!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!uunet!mcsun!ukc!dcl-cs!aber-cs!athene!pcg From: pcg@cs.aber.ac.uk (Piercarlo Grandi) Newsgroups: comp.mail.misc Subject: Re: Which headers may Sendmail re-write? Message-ID: Date: 21 Dec 90 15:35:30 GMT References: <2766B2E7.276@tct.uucp> Sender: pcg@aber-cs.UUCP Organization: Coleg Prifysgol Cymru Lines: 127 Nntp-Posting-Host: odin In-reply-to: karl_kleinpaste@cis.ohio-state.edu's message of 13 Dec 90 17:39:56 GMT On 13 Dec 90 17:39:56 GMT, karl_kleinpaste@cis.ohio-state.edu said: kleinpaste> chip@tct.uucp writes: chip> 2. A message passing through your domain on its way to my domain chip> should be left alone, without ANY modifications to the message AT chip> ALL except for the envelope. chip> No site causes problems for other sites by following these rules. chip> So why shouldn't we all adopt these rules right now? I'm chip> listening... kleinpaste> I doubt it. Pardon me for being rude, but I really doubt kleinpaste> it. A hypothetical example. Let's assume that "tct" is a kleinpaste> UUCP neighbor of "osu-cis." Let's assume that chip@tct.uucp kleinpaste> sends mail aimed at, say, osu-cis!ucbvax!somebody. Headers kleinpaste> read: kleinpaste> From: chip@tct.uucp kleinpaste> To: osu-cis!ucbvax!somebody kleinpaste> Envelope looks like "From tct!chip" and "rmail kleinpaste> ucbvax!somebody" by the time it reaches my system. So far, kleinpaste> so good, I hope. No, nothing good. Your hypothetical geek is using two different and incompatible addressing formats in a message. Is the message intended to be RFC822 compliant? If so, the "To:" line is not. Is it intended to be UUCP compliant? If so, anything goes (UUCP mail only cares about the envelope), but then he guy is not expecting to be replied to for real, as the From: line is bogus from a UUCP point of view. He would force an UUCP target to use the 'From ' line to reply. If he used a proper UUCP relative name such as 'From: seismo!tct' things would be ok instead. Note: let me repeat that not a lot of people realize that in the UUCP world addresses and routes are not the same thing; UUCP uses relative names, that is a site name is given as 'a!b!c' which means 'the c machine which a neighbour of b, which is a neighbour of a'. Given UUCP maps one can well devise a completely different route to *that* 'c', that does not pass thru 'a' or 'b'. This is why 'From: ' and 'From ' (and 'Reply-To: ') in UUCP mail can specify completely different bang sequences. kleinpaste> My mail installation wants to do things to reach ucbvax via kleinpaste> the Internet rather than UUCP. That is, seeing kleinpaste> "ucbvax!somebody" as an intended destination, I nonetheless kleinpaste> want to speak SMTP to ucbvax.berkeley.edu. This is kleinpaste> perfectly legit, as the choice of outbound transport is mine kleinpaste> to make. Not so easy! First you must prove that ucbvax and ucbvax.berkely.edu are the same entity. Granted that you do that, you now have the problem of *you* deciding to become a gateway between the UUCP and the Internet world. This is *your* problem, as the originator of your piece of mail cannot possibly anticipate it. As a gateway it is *your* problem to preserve semantics. You get a patched up solution: kleinpaste> I generate RFC-compliant headers when speaking to Internet kleinpaste> sites. So I will generate the following SMTP conversation kleinpaste> to ucbvax.berkeley.edu for this mail: kleinpaste> HELO something.cis.ohio-state.edu kleinpaste> MAIL FROM: kleinpaste> RCPT TO: kleinpaste> DATA kleinpaste> From: tct!chip@cis.ohio-state.edu kleinpaste> To: ucbvax!somebody@cis.ohio-state.edu kleinpaste> your text kleinpaste> . kleinpaste> QUIT kleinpaste> That works. Nothing else does. I agree it works, *as things are now*, but it is disgusting. The real problem is that, let me repeat it for the millionth time, the UUCP and Internet naming structures are totally different, and there is no good way to map one onto the other in all cases, so a gateway to/from the Internet cannot guarantee to preserve semantics. The real solution is not to attempt to do this, like you do above, but to introduce in the Internet a way of addressing entities outside the Internet naming structure. That is, the real problem is simply that the Internet standards do not provide for mail gateways, so if poor Kleinpaste of Ohio state is good enough to provide one, he has to pretend that certain things are Internet addresses, because the Internet is a closed system (as far as standards make it), when they are not, and this causes endless trouble. Note that this is pure Internet parochialism; since UUCP uses relative naming and quasi-source routing, UUCP mail can easily accomodate any other naming scheme that does not exclamation marks in its addresses. As fas as I remember, you said that for precisely this reason Ohio's sendmail translates all addresses internally to UUCP bang notation and then reconverts them to Internet if necessary at the last moment if needed. Is is too late to switch the Internet to bang notation, at least for naming (not for routing)? I am afraid it is. But it is not too late to add some decent extension to the headers to handle this. Many will recognize my style when I say that your solution should be rewritten as: HELO something.cis.ohio-state.edu MAIL FROM: RCPT TO: DATA Sender: uucp-gateway@cs.ohio-state.edu Apparently-To: somebody@ucbvax.berkeley.edu From: chip@tct.uucp To: osu-cis!ucbvax!somebody your text . QUIT Note, note that I am not sure about adding 'Apparently-To: ', a bit more about 'Sender: '; and note that the 'To: ' is *unchanged*, because it is not a route (routes belong to envelopes!), it is a relative address. The 'From: ' is also unchanged, of course! What about a nice RFC that standardizes ways of addressing entities beyond a gateway between the Internet and the DNS and the something-that-lurks-malignantly-in-the-dark-night-outside? -- Piercarlo Grandi | ARPA: pcg%uk.ac.aber.cs@nsfnet-relay.ac.uk Dept of CS, UCW Aberystwyth | UUCP: ...!mcsun!ukc!aber-cs!pcg Penglais, Aberystwyth SY23 3BZ, UK | INET: pcg@cs.aber.ac.uk