uucp and preserving Reply-to: how?
Mike Bilow
mikebw at bilow.bilow.uu.ids.net
Thu Apr 4 19:37:00 EST 1996
Dale R. Worley wrote in a message to Mike Bilow:
DRW> My impression is that the combination of UUCP (!) and
DRW> Internet (@) addressing was handled much better 5 or so
DRW> years ago, when hundreds of companies were "one UUCP hop off
DRW> the Internet". Now that everyone and his kid brother is
DRW> directly connected, people aren't worrying about UUCP
DRW> addressing any more.
Your recollection is different from mine. As far as I recall, this stuff never
worked right then, and it doesn't work right now. The only difference is that
it has become less important now that UUCP is nearly dead.
DRW> But if I remember correctly, the convention was that
DRW> foo!bar at baz
DRW> meant "send by SMTP to baz, who will send by UUCP to foo",
DRW> and that
DRW> foo!bar%baz
DRW> meant "send by UUCP to foo, who will send by SMTP to baz.
DRW> Basically, the precedence is % > ! > @. That works for
DRW> getting mail between the Internet and a one-hop-removed
DRW> site.
You can construct pathological failures no matter what you concoct for parsing
rules. The fundamental problem is that '!' is a left-to-right operator while
'%' and '@' are right-to-left operators. UUCP regards '!' as special but '@'
as ordinary, while SMTP regards '@' as special but '!' as ordinary. This
breaks down totally when people choose domains as UUCP intermediaries:
ucbvax!relay.uu.net!mikebw at uucp.bilow.com
is a classic example of an address which cannot be validly parsed no matter
what you do with it, and I remember seeing things like this as long ago as the
late 1980s. If you are an SMTP agent, you will try to send this to
uucp.bilow.com, but uucp.bilow.com is a UUCP-only machine. Since you are an
SMTP machine, you can't send it to ucbvax, which is a UUCP node. The proper
behavior is for the SMTP sender to transmit it to relay.uu.net, and this is how
things used to be kludged up using the DNS MX records -- but that results from
parsing uucp.bilow.com as the mail destination, not from parsing the mail
address itself to get relay.uu.net. You could represent this consistently:
ucbvax!relay.uu.net!uucp.bilow.com!mikebw
or
mikebw%uucp.bilow.com at relay.uu.net
but it is impossible to tell this from the mail address alone, without knowing
at least some of the factual basis for the address format.
-- Mike
More information about the Discuss
mailing list