paul@frcs.UUCP (Paul Nash) (12/03/90)
We have a dispute between the administrators of a few local machines. One of the machines runs `sendmail' (for bizzare reasons), and has a `sendmail.cf' file that re-writes the `To:' and `From:' fields in all forwarded mail. The effect on the headers is roughly as follows (`gatebox' is the [ficticious] `sendmail' pervert): incoming outgoing To: user@toaster To: toaster!user@gatebox From: me@tinytoy From: tinytoy!me@gatebox The administrator of this particular machine feels that this is perfectly reasonable, and even desirable, so that mail gets routed the way that they think fit. However, others of us think that this is not terribly sociable, and want our addresses left alone. I have tried digging through RFC822, but it has cast no light on the subject. My gut feel, though, is that each mailer should only rewrite the `Path:' field (and add a fifteen-line `Received:' field). The rest should surely be left alone (after all, _I_ know who I am). Are there any Mail Gurus out there who can elighten us? ---=---=---=---=---=---=---=---=---=---=---=---=---=---=---=---=---=--- Paul Nash Flagship Wide Area Networks (Pty) Ltd paul@frcs.UUCP ...!uunet!ddsw1!proxima!frcs!paul
barmar@think.com (Barry Margolin) (12/05/90)
In article <208@frcs.UUCP> paul@frcs.UUCP (Paul Nash) writes: >The effect on the headers is roughly as follows (`gatebox' is the >[ficticious] `sendmail' pervert): > > incoming outgoing > > To: user@toaster To: toaster!user@gatebox > From: me@tinytoy From: tinytoy!me@gatebox > >The administrator of this particular machine feels that this is >perfectly reasonable, and even desirable, so that mail gets routed >the way that they think fit. However, others of us think that this >is not terribly sociable, and want our addresses left alone. > >I have tried digging through RFC822, but it has cast no light on >the subject. My gut feel, though, is that each mailer should only >rewrite the `Path:' field (and add a fifteen-line `Received:' field). >The rest should surely be left alone (after all, _I_ know who I am). >Are there any Mail Gurus out there who can elighten us? The rule is that when a gateway forwards mail into the Internet, the "@<host>" portion of the addresses in the header must all be recognizable to Internet hosts. Prior to the domain system, this meant that the <host> had to be in the Internet host table. Now it means that the <host> must have either an A or MX record in the domain database. So, if "toaster" and "tinytoy" are in the domain database there should be little need to rewrite them. That's the ideal. However, the fact is that many systems are still running old mailers that don't know how to use MX routing. So, if they want most hosts to be able to reply to the mail, it's safer to put an actual Internet host in the "@<host>" portion of the addresses. You may know that tinytoy recognizes the host name toaster and knows how to route mail to it. But this may not be true for all users on your side of gatebox. And do you really know what protocols are supported by all hosts you will ever send mail to? -- Barry Margolin, Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar
time@tbomb.ice.com (Tim Endres) (12/05/90)
In article <208@frcs.UUCP>, paul@frcs.UUCP (Paul Nash) writes: > The administrator of this particular machine feels that this is > perfectly reasonable, and even desirable, so that mail gets routed > the way that they think fit. However, others of us think that this > is not terribly sociable, and want our addresses left alone. > Disclaimer: I am no email guru, just been into it a long time. This is one of the longer standing debates in mail history. The original philosophy in electronic mail design was that a mailer look at the "envelope address" to work with a piece of mail and *never* touch the "envelope contents". This was fine with a single mailer and a single transport, but alas, along came other mailers and transports. With the divergence of mail mechanisms came the realization that the "envelope address" was sometimes inadequate. To solve this, some mailers began to look at the internals of the "envelope contents" to view the header information and better perform their task. While this was viewed as "wrong", it solved the problem at hand and created few of its own. Then, along came sendmail! The dark force of the mail universe! :^) For some reason, which I have never had fully explained, sendmail found it not only necessary to view headers to determine the means of transporting the letter, but to modify these headers in order to assist in the routing and reply routing of the letter through other sendmails. Mailer purists will tell you that sendmail is evil and breaks the most fundamental of rules. This is my attitude. However, sendmail administrators often have good and valid reasons for doing what they do. Clearly, sendmail performs its duties at many locations without complaints. I guess the bottom line is this: I have *never* met a sendmail installation that did not create problems by munging headers. This is a headache for the administrator as much as the mail user. Now granted, it may be only one problem out of thousands of letters, but sooner or later it happens. As an aside, my mail server recently tossed sendmail away for smail3. This was because 30% of the mail I sent bounced going out, and 40% of the replies never made it back. I am sure that had the sendmail been configured a little more the problem could have been fixed. BUT smail3 fixed the problem right away. It left the headers alone! tim. ------------------------------------------------------------- Tim Endres | time@ice.com ICE Engineering | uunet!ice.com!time 8840 Main Street | Whitmore Lake MI. 48189 | (313) 449 8288
rickert@mp.cs.niu.edu (Neil Rickert) (12/05/90)
In article <208@frcs.UUCP> paul@frcs.UUCP (Paul Nash) writes: > >We have a dispute between the administrators of a few local machines. >One of the machines runs `sendmail' (for bizzare reasons), and has >a `sendmail.cf' file that re-writes the `To:' and `From:' fields in >all forwarded mail. > >The effect on the headers is roughly as follows (`gatebox' is the >[ficticious] `sendmail' pervert): > > incoming outgoing > > To: user@toaster To: toaster!user@gatebox > From: me@tinytoy From: tinytoy!me@gatebox > In an ideal world, the To: and 'From:' headers would not be rewritten. But in this ideal world only valid addresses would be used, so that rewriting is not required. If your world creates addresses such as 'user@toaster' or 'me@tinytoy', then your world is far from ideal, and the rewriting by sendmail is only rescuing you from a worse fate. A well designed 'sendmail.cf' will try to make sure that all addresses are valid. If they are not valid, it will try to add routing to make sure there is a valid internet address on the outgoing mail. If the incoming address is already valid it is normally rewritten to its incoming form. If you send me mail with a 'From:' address of 'me@tinytoy', and I find that my attempt to reply results in bounced mail and considerable annoyance, you and your postmaster are both going to get a strong message from me complaining about your broken mailers. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115. +1-815-753-6940
bruce@balilly.UUCP (Bruce Lilly) (12/06/90)
In article <208@frcs.UUCP> paul@frcs.UUCP (Paul Nash) writes: > >[ ... ] > >The effect on the headers is roughly as follows (`gatebox' is the >[ficticious] `sendmail' pervert): > > incoming outgoing > > To: user@toaster To: toaster!user@gatebox > From: me@tinytoy From: tinytoy!me@gatebox > >[ ... ] > >I have tried digging through RFC822, but it has cast no light on >the subject. My gut feel, though, is that each mailer should only >rewrite the `Path:' field (and add a fifteen-line `Received:' field). >The rest should surely be left alone (after all, _I_ know who I am). >Are there any Mail Gurus out there who can elighten us? The applicable RFC's (including 822) require that addresses on the internet must be in domain form (not ! paths), and that fully-qualified domains be used. So, if the ficticous ``gatebox'' is really something like ``foo.bar.com'', then what is being done is correct if the mail is likely to enter the Internet from that system. (systems acting as gateways between the Internet and non-Internet systems, such as the uucp network, are required to translate those ``foreign'' address syntaxes into RFC-compliant forms when gatewaying onto the Internet) If it's ``foo.bar.com'' but the mail isn't being gatewayed onto the Internet, the changes are unnecessary but harmless. Finally if ``gatebox'' is some form other than the domain naming system, such as a uucp host name, then the change accomplishes nothing. (user@toaster is not a valid RFC822 address because ``toaster'' is not a fully-qualified domain name; presumably it is a uucp host name) -- Bruce Lilly blilly!balilly!bruce@sonyd1.Broadcast.Sony.COM
karl_kleinpaste@cis.ohio-state.edu (12/07/90)
bruce@balilly.uucp writes: > To: user@toaster To: toaster!user@gatebox > From: me@tinytoy From: tinytoy!me@gatebox The applicable RFC's (including 822) require that addresses on the internet must be in domain form (not ! paths), and that fully-qualified domains be used. To clarify that just a bit, the RFCs require that addresses on the Internet be FQDNs _if_ they are going outside their domain of origin. Abbreviations within a domain are fine. RFC822 section 6.2.2 page 29: Since any number of levels is possible within the domain hierarchy, specification of a fully qualified address can become inconvenient. This standard permits abbreviated domain specification... When a message crosses a domain boundary, all addresses must be specified in the full format, ending with the top-level name-domain in the right-most field. It is the responsibility of mail forwarding services to ensure that addresses conform with this requirement. In the case of abbreviated addresses, the relaying service must make the necessary expansions... The "gatebox" in question is doing exactly the right thing if it is making addresses palatable to things outside your domain. If it's doing it for destinations within your domain, it's harmless but not especially useful. If your site inflicts "user@tinytoy" on my sendmail, I'm going to finish the job of address-breaking that your site started: It's going to be rewritten as user@cis.ohio-state.edu. This rewrite does the Right Thing in the usual case where Joe Random writes mail to, e.g., jane@apple. I have to interpret OneWordHostNames within the context of cis.ohio-state.edu, a host apple.cis.ohio-state.edu exists, and we hide hostnames anyway, so I rewrite all OWHNs as cis.ohio-state.edu. Since a recipient here of address "user@tinytoy" couldn't have replied directly to it anyway, I figure it serves 'em right if they have to hunt through Received: headers for the real information they needed. I post an explanatory "mail/news/finger glitches and solutions" to a local newsgroup periodically so that the users know what's what. --karl
rickert@mp.cs.niu.edu (Neil Rickert) (12/07/90)
In article <KARL.90Dec6171155@giza.cis.ohio-state.edu> karl_kleinpaste@cis.ohio-state.edu writes: >If your site inflicts "user@tinytoy" on my sendmail, I'm going to >finish the job of address-breaking that your site started: It's going >to be rewritten as user@cis.ohio-state.edu. This rewrite does the But if your site inflicts 'user@tinytoy' on my sendmail, its gonna be changed to 'user%tinytoy@your.relay.host', where 'your.relay.host' means the host which actually connected to me - if not known to DNS this might become 'user%tinytoy@[1.2.3.4]' (with the appropriate actual internet address. I got tired of these unqualified addresses cropping up everywhere, and the bounced mail they generate. So I added this feature to the IDA package. Look for an announcement soon of 'IDA-1.4.1' configuration kit. This won't solve all the problems of vendor supplied software which doesn't properly qualify domains, but it should help. (Sorry, it can't be done in non-IDA versions of sendmail). -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115. +1-815-753-6940
huitema@jerry.inria.fr (Christian Huitema) (12/07/90)
In article <1990Dec7.003726.28242@mp.cs.niu.edu>, rickert@mp.cs.niu.edu (Neil Rickert) writes: > In article <KARL.90Dec6171155@giza.cis.ohio-state.edu> > karl_kleinpaste@cis.ohio-state.edu writes: > >If your site inflicts "user@tinytoy" on my sendmail, I'm going to > >finish the job of address-breaking that your site started: It's going > >to be rewritten as user@cis.ohio-state.edu. This rewrite does the > > But if your site inflicts 'user@tinytoy' on my sendmail, its gonna > be changed to 'user%tinytoy@your.relay.host', where 'your.relay.host' > means the host which actually connected to me - if not known to DNS > this might become 'user%tinytoy@[1.2.3.4]' (with the appropriate actual > internet address. > There are two cases to consider: submission and relay. Submission is performed when a local user edit a piece of text, using some more or less adequate tools ranging from "ed" to "xmh", and "pipe" it into the "mailer". Relay is performed when a host on the network receive a piece of mail from another host, and ask the local host to relay or deliver it. In the case of relay within a single network, or more precisely within a single naming system, there is no reason to muck with anything but the envelope. In fact, any attempt to "correct" or "rewrite" the addresses in lines like "from" or "to" or "reply-to" is just bound to add noise and augment the occurence rate of irrepliable address: if the information was not correct from the beginning, it will probably stay incorrect after a rewrite. And if it was correct, it may well become incorrect. In short, the philosophy relies on the difference between names and addresses: names should be absolute, and should be the only thing present in headers, whilst using overwriting the names with addressing information using either the "!" or the "%" or the <@,@,@:> convention might be a fair game in the envelopes. On the other hand, a local mailer should make sure that the pieces of texts submitted by the suers are actually valid pieces of mail. This may involve checking the names in some headers to ensure that they are valid FQDN, and checking that the mandatory or semi mandatory fields "Date", "From" and "message-id" are present. One of the problems with sendmail is that one cannot specify in the ".cf" file which actions are to be performed on a "real" and which on a "submission". Christian Huitema
les@chinet.chi.il.us (Leslie Mikesell) (12/08/90)
In article <1CE00001.p376wj@tbomb.ice.com> time@tbomb.ice.com writes: >As an aside, my mail server recently tossed sendmail away for smail3. >This was because 30% of the mail I sent bounced going out, and 40% >of the replies never made it back. I am sure that had the sendmail >been configured a little more the problem could have been fixed. BUT >smail3 fixed the problem right away. It left the headers alone! Even smail3 will mung the the header lines by prepending its own uucp name if they are already in "!" notation. I ripped this part out because someone is likely to reverse user@domain into RFC976'ish domain!user when they pass the message off to uucp mailers. This would be reasonable (since reasonable uucp mailers treat the two forms interchangably) except that it encourages sites along the path to prepend their own name, and not all of them do. Thus the final recipient is likely to see x!y!domain!user where x is neither a neighbor nor a fully qualified domain. Les Mikesell les@chinet.chi.il.us
les@chinet.chi.il.us (Leslie Mikesell) (12/08/90)
In article <KARL.90Dec6171155@giza.cis.ohio-state.edu> karl_kleinpaste@cis.ohio-state.edu writes: >bruce@balilly.uucp writes: > > To: user@toaster To: toaster!user@gatebox > > From: me@tinytoy From: tinytoy!me@gatebox > > When a message crosses a domain boundary, all addresses must > be specified in the full format, ending with the top-level > name-domain in the right-most field. It is the responsibility > of mail forwarding services to ensure that addresses conform > with this requirement. In the case of abbreviated addresses, > the relaying service must make the necessary expansions... >The "gatebox" in question is doing exactly the right thing if it is >making addresses palatable to things outside your domain. If it's >doing it for destinations within your domain, it's harmless but not >especially useful. There's no evidence from those addresses that the internet was involved at all or that internet rules have any bearing on the matter. If it were harmless, the question wouldn't have been brought up. >If your site inflicts "user@tinytoy" on my sendmail, I'm going to >finish the job of address-breaking that your site started: It's going >to be rewritten as user@cis.ohio-state.edu. This rewrite does the >Right Thing in the usual case where Joe Random writes mail to, e.g., >jane@apple. I have to interpret OneWordHostNames within the context >of cis.ohio-state.edu, a host apple.cis.ohio-state.edu exists, and we >hide hostnames anyway, so I rewrite all OWHNs as cis.ohio-state.edu. The uunet practice of munging to OWHN%user@mydomain is probably the best approach to a bad situation. At least if you are willing to resolve OWHN's to the extent that they do (or throw it at Rutgers if you aren't). With this approach, if a site misinterprets the munging it will at least get an error locally instead of sending down something that appears to be a path as happens with the OWHN!user@mydomain approach. Actually, I contend that rewriting as user@OWHN.NET.mydomain would be a kinder thing to do if you have the wild-card MX to bring back the replies, and the NET name could be a variable telling you where to look for the OWHN to avoid conflicts. >Since a recipient here of address "user@tinytoy" couldn't have replied >directly to it anyway, I figure it serves 'em right if they have to >hunt through Received: headers for the real information they needed. But the recipient may not be at your site. If you claim uucp connectivity to tinytoy and toaster, then you should d*mn well be able to deliver from one to the other without destroying the header information. >I post an explanatory "mail/news/finger glitches and solutions" to a >local newsgroup periodically so that the users know what's what. Perhaps you should include such a message in error bounces when the destination was user@cis.ohio-state. Something like: "We regret that this message cannot be delivered - if this was a reply to a message from some other machine, we don't believe that machine ever existed." Les Mikesell les@chinet.chi.il.us
barnett@grymoire.crd.ge.com (Bruce Barnett) (12/08/90)
In article <1CE00001.p376wj@tbomb.ice.com> time@tbomb.ice.com (Tim Endres) writes: > Then, along came sendmail! The dark force of the mail universe! :^) > For some reason, which I have never had fully explained, sendmail > found it not only necessary to view headers to determine the means > of transporting the letter, but to modify these headers in order to > assist in the routing and reply routing of the letter through other > sendmails. The reason sendmail does this is because it is necessary. Not all addresses that come into our machine are valid. Not all are fully qualified domain names, or RFC822 addresses. The addresses user@machine or user@machine.UUCP are not valid Internet addresses. If I deliver mail to another internet site, it must be replyable. The above addresses are NOT. If we get such an address, and we send it to another internet site, we MUST convert it into the form: machine!user@crdgw1.ge.com To do anything else would be wrong. -- Bruce G. Barnett barnett@crd.ge.com uunet!crdgw1!barnett
time@tbomb.ice.com (Tim Endres) (12/08/90)
In article <BARNETT.90Dec7152753@grymoire.crd.ge.com>, barnett@grymoire.crd.ge.com (Bruce Barnett) writes: > The reason sendmail does this is because it is necessary. > Not all addresses that come into our machine are valid. > Not all are fully qualified domain names, or RFC822 addresses. > > The addresses > > user@machine > or > user@machine.UUCP > > are not valid Internet addresses. If I deliver mail to another internet > site, it must be replyable. The above addresses are NOT. Reply-able? By what? If it is the user agent that incorrectly builds the reply address, then it is a bug in the user agent, and should be corrected by aliases or code fixes/extensions. If it is sendmail itself, the "envelope" that sendmail uses is sufficient to allow for reply (bounce?). Further, RFC822 allows for header extensions, with which sendmail could include any type of specification it desired, while retaining the integrity of the original header. > If we get such an address, and we send it to another internet site, we > MUST convert it into the form: > machine!user@crdgw1.ge.com This conversion can be done, and the delivery completed, without the modification of the mail's header. Do it in the sendmail "talk". If the conversion needs to be > To do anything else would be wrong. Or inconvenient? I do not profess to be an internet mail expert, I am not. I have simply always thought that the problems sendmial is "solving" could be solved while still observing the "do not touch the letter contents" rule. tim. ------------------------------------------------------------- Tim Endres | time@ice.com ICE Engineering | uupsi!ice.com!time 8840 Main Street | Whitmore Lake MI. 48189 | (313) 449 8288
rickert@mp.cs.niu.edu (Neil Rickert) (12/08/90)
In article <1CE00001.914g2o@tbomb.ice.com> barnett@crdgw1.ge.com writes: > >Reply-able? By what? If it is the user agent that incorrectly builds >the reply address, then it is a bug in the user agent, and should >be corrected by aliases or code fixes/extensions. > Replyable by user software. I want my users to be able to hit the 'R' key to generate a reply with valid addresses extracted from the headers of the mail they are responding to. >This conversion can be done, and the delivery completed, without the >modification of the mail's header. Do it in the sendmail "talk". If >the conversion needs to be > Anything done which doesn't touch the headers obviously cannot fix broken headers. But it is the header address you are supposed to reply to. Some people are purists, and have a definition of perfection which is hardly ever met. Others of us just want mail to work, our users to be happy, and as little failed mail as possible. You can complain all you like about the idea that this should be done by the user agent, not the transfer agent. But if your user agent prepares bad addresses it is my users who suffer, and my time that has to be spent explaining to them how to prowl through the 'Received:' lines to try to construct a possibly valid address. And since users can create their own MUA with some shell scripts, you will never fix them all. But most mail goes through a single MTA, so correcting headers there is much more likely to be effective. >I do not profess to be an internet mail expert, I am not. I have simply >always thought that the problems sendmial is "solving" could be solved >while still observing the "do not touch the letter contents" rule. > Herein lies the crux of the argument. The argument that the MTA should not 'touch the letter contents'. This all depends on the definition of contents. If you just define the 'contents' to be everything below the header, then this is pretty well what happens. Part of the problem is with terminology such as 'Envelope' that has developed. This makes one think of a standard letter, with everything not in the envelope being the contents. This is an unfortunate way to look at it. Consider a priority mail which you are sending by Federal Express. Inside the package is the contents. On the outside of the package there is addressing information, receipts, etc. In addition the driver of the delivery truck has a check list he uses to keep track of what he is delivering. The 'envelope' of email really corresponds to the driver's checklist. The headers really correspond to what is on the outside of the package. The text below the headers correspond to the contents of the package. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115. +1-815-753-6940
chip@tct.uucp (Chip Salzenberg) (12/11/90)
According to les@chinet.chi.il.us (Leslie Mikesell): >Even smail3 will mung the the header lines by prepending its own >uucp name if they are already in "!" notation. I ripped this part >out because someone is likely to reverse user@domain into RFC976'ish >domain!user when they pass the message off to uucp mailers. Of course, if a header field contains user@valid.domain.name, then any mailer mangling that header field into valid.domain.name!user is being Evil and Rude. In any case, you're quite right; Smail 3's behavior in prepending its host name is also Evil and Rude, and should be stopped forthwith. Perhaps a public patch posting would be appropriate. -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "What's that thing, when people die, they take apart the body to see why?" -- St. Theresa of the Net
chip@tct.uucp (Chip Salzenberg) (12/11/90)
According to rickert@mp.cs.niu.edu (Neil Rickert): >Part of the problem is with terminology such as 'Envelope' that has >developed. This makes one think of a standard letter, with everything >not in the envelope being the contents. This is an unfortunate way to >look at it. Actually, I find the usage of "envelope" to refer to the external address information -- the From_ line, the argument to the remotely executed "rmail" command, the parameter of the MAIL FROM and RCPT TO line(s) of SMTP -- to be quite appropriate. They correspond quite nicely to the destination and return addresses on a first class letter. Where the Evilness and Rudeness of Sendmail comes in is when headers are modified ON THEIR WAY THROUGH to another site. For example, if you are unfortunate enough to send UUCP mail to someone via Sun.COM, you'll be in for a shock. Your To:, From: and Reply-To: addresses will be mangled into unusableness! Why? Because Sendmail modifies all headers on which it gets its grubby little fingers, no matter the message's final destination. Sendmail doesn't care where a message came from or where it's going. All headers are fair game. In my opinion, the header mangling "feature" of Sendmail is the worst thing to happen to E-Mail ever. Sendmail is an equal opportunity destroyer. If only I could go back and erase just that one disk at just the right time... -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "What's that thing, when people die, they take apart the body to see why?" -- St. Theresa of the Net
chip@tct.uucp (Chip Salzenberg) (12/11/90)
According to rickert@mp.cs.niu.edu (Neil Rickert): >A well designed 'sendmail.cf' will try to make sure that all addresses >are valid. If they are not valid, it will try to add routing to make sure >there is a valid internet address on the outgoing mail. If the incoming >address is already valid it is normally rewritten to its incoming form. This paragraph -- apparently written with a straight face -- brought to my mind this particularly appropriate quotation: This debate [over UUCP rerouting] is about whether any person can reliably know everything others know, want, and do. Some people believe the answer is yes. The rest of us are amazed. -- Vernon Schryver The Great Header Rewriting Debate breaks down along the same lines. No one can reliably know the form of all addresses that will be accepted as valid on another person's machine. If one neighbor site generates addresses that cannot be understood by another neighbor site, what business is that of yours? Correct answer: "None." -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "What's that thing, when people die, they take apart the body to see why?" -- St. Theresa of the Net
rickert@mp.cs.niu.edu (Neil Rickert) (12/11/90)
In article <27640C8A.1A46@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >The Great Header Rewriting Debate breaks down along the same lines. >No one can reliably know the form of all addresses that will be >accepted as valid on another person's machine. If one neighbor site >generates addresses that cannot be understood by another neighbor >site, what business is that of yours? Correct answer: "None." In principle, I agree. In practice ... I will get rid of all code in my version of sendmail that touches headers just as soon as: 1. Vendors stop creating and distributing software that routinely sends out mail with incorrect header addresses - usually headers with unqualified domain names. 2. All such broken software is replaced on existing machines. 3. UUCP addressing protocols are changed to fully support domain style addresses, and all UUCP users stop using bang addresses. Fat chance. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115. +1-815-753-6940
chip@tct.uucp (Chip Salzenberg) (12/13/90)
According to rickert@mp.cs.niu.edu (Neil Rickert):
> In principle, I agree. In practice ...
No, wait. Perhaps I'm not making myself clear. Let me try again:
1. A message destined for delivery in *your* domain is fair game
for anything you may want to do, up to and including translating
the entire message, header and all, into Swahili.
2. A message passing through your domain on its way to my domain
should be left alone, without ANY modifications to the message
AT ALL except for the envelope.
(Note that "envelope" here means the SMTP "MAIL FROM" and "RCPT TO"
values, the argument to the UUCP "rmail" command, the From_ line,
and all other things that are *NOT* covered by RFC822.)
No site causes problems for its own users by following these rules.
No site causes problems for other sites by following these rules.
So why shouldn't we all adopt these rules right now? I'm listening...
fair@Apple.COM (Erik E. Fair) (12/13/90)
In the referenced article, time@tbomb.ice.com writes: > >Disclaimer: I am no email guru, just been into it a long time. > [...] >I guess the bottom line is this: > I have *never* met a sendmail installation that did not create > problems by munging headers. This is a headache for the administrator > as much as the mail user. Now granted, it may be only one problem > out of thousands of letters, but sooner or later it happens. This is because there are entirely too many people who believe that because they have read chapter 5 of the Sendmail Installation and Operation Guide that they are qualified to modify sendmail configuration files. Wrong. You must have a deep understanding of the E-mail system as a whole, and how all the parts interact with each other (and there are some cases in which you just can't win, due to the ignorance of other mail system implementors. There is a special place in Hell for them). Sendmail is typical of most tools for UNIX: it gives you plenty of rope, with which you may accomplish your task, or hang yourself, if that is what you desire. Smail is a win for most people because it is simple, and has wired assumptions for common cases. Don't try anything complex with it, and it will serve you well. That was why it was designed. However, I wouldn't try to run a medium-complex mail installation (e.g. Apple Computer) without sendmail on the key systems because there are no alternatives with its power and flexibility, for those who are competant enough to make correct use of it. Erik E. Fair apple!fair fair@apple.com
rickert@mp.cs.niu.edu (Neil Rickert) (12/13/90)
In article <2766B2E7.276@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: > >1. A message destined for delivery in *your* domain is fair game > for anything you may want to do, up to and including translating > the entire message, header and all, into Swahili. > >2. A message passing through your domain on its way to my domain > should be left alone, without ANY modifications to the message > AT ALL except for the envelope. > >No site causes problems for its own users by following these rules. >No site causes problems for other sites by following these rules. >So why shouldn't we all adopt these rules right now? I'm listening... Sure. And when I relay Internet mail to 'uucpnode', and a user on 'uucpnode' does a R(eply), my machine gets to relay a lot of the uucpnode's local mail back to it, since that node doesn't understand the form of address on the header so sends it to its forwarding relay for interpretation. If I am going to follow this procedure I had better start charging real money for relay services. I will probably pick up quite a bit of cash just from this stupid 'local relaying'. But, come to think of it, as the money rolls in I should save it to pay for the lawyers. Some day the uucpsite admin is going to complain that with this improved service (of not munging headers) that I am charging him for, something funny is happening - he is not getting many replies to mail. Probably because all of those Internet sites having difficulty replying to 'uucpsite!user'. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115. +1-815-753-6940
karl_kleinpaste@cis.ohio-state.edu (12/14/90)
chip@tct.uucp writes:
2. A message passing through your domain on its way to my domain
should be left alone, without ANY modifications to the message
AT ALL except for the envelope.
No site causes problems for other sites by following these rules.
So why shouldn't we all adopt these rules right now? I'm listening...
I doubt it. Pardon me for being rude, but I really doubt it.
A hypothetical example.
Let's assume that "tct" is a UUCP neighbor of "osu-cis." Let's assume
that chip@tct.uucp sends mail aimed at, say, osu-cis!ucbvax!somebody.
Headers read:
From: chip@tct.uucp
To: osu-cis!ucbvax!somebody
Envelope looks like "From tct!chip" and "rmail ucbvax!somebody" by the
time it reaches my system. So far, so good, I hope.
My mail installation wants to do things to reach ucbvax via the
Internet rather than UUCP. That is, seeing "ucbvax!somebody" as an
intended destination, I nonetheless want to speak SMTP to
ucbvax.berkeley.edu. This is perfectly legit, as the choice of
outbound transport is mine to make.
I _can't_ send
MAIL FROM:<tct!chip>
in SMTP because it lacks "@right.hand.side" as required by the RFCs.
MAISER on a DEC-20 will choke (has choked) on it. Nor can I send
MAIL FROM:<chip@tct.uucp>
as the envelope origin. "uucp" is not a valid top-level domain. See
RFC 1123 section 5.2.2 page 49.
I _can't_ send
From: chip@tct.uucp
in the headers. "uucp" is not a valid top-level domain. Similarly,
From: tct!chip
is insufficient due to no "@right.hand.side." See RFC 822 in several
places, such as the syntax grammar beginning section 4.1 page 17: the
"mailbox" spec must be properly dealt with.
Do you see a pattern developing here?
I hack headers as well as envelope because headers containing bogon,
unreal, and unregistered domains are invalid on the Internet. Your
headers, as supplied to my mailer, are WRONG. You CANNOT count on any
random site anywhere on the Internet being able to reply to such an
address. Keep in mind that, regardless of what envelope hacking gets
done, legitimate replies end up going to the From: address. And there
are rather more sites out there incapable of addressing "host!user"
than you might think.
I generate RFC-compliant headers when speaking to Internet sites. So
I will generate the following SMTP conversation to ucbvax.berkeley.edu
for this mail:
HELO something.cis.ohio-state.edu
MAIL FROM:<tct!chip@cis.ohio-state.edu>
RCPT TO:<somebody@ucbvax.berkeley.edu>
DATA
From: tct!chip@cis.ohio-state.edu
To: ucbvax!somebody@cis.ohio-state.edu
your text
.
QUIT
That works. Nothing else does. (Well, I could have rewritten the To:
as somebody@ucbvax.berkeley.edu, but my .cf isn't quite smart enough
to do that at that level.) And it was *necessary*.
--karl
mcr@Latour.Sandelman.OCUnix.On.Ca (Michael Richardson) (12/14/90)
In article <KARL.90Dec13123956@giza.cis.ohio-state.edu> karl_kleinpaste@cis.ohio-state.edu writes: >Let's assume that "tct" is a UUCP neighbor of "osu-cis." Let's assume >that chip@tct.uucp sends mail aimed at, say, osu-cis!ucbvax!somebody. >Headers read: > From: chip@tct.uucp > To: osu-cis!ucbvax!somebody >Envelope looks like "From tct!chip" and "rmail ucbvax!somebody" by the >time it reaches my system. So far, so good, I hope. > >My mail installation wants to do things to reach ucbvax via the >Internet rather than UUCP. That is, seeing "ucbvax!somebody" as an >intended destination, I nonetheless want to speak SMTP to >ucbvax.berkeley.edu. This is perfectly legit, as the choice of >outbound transport is mine to make. > >I _can't_ send > MAIL FROM:<tct!chip> >in SMTP because it lacks "@right.hand.side" as required by the RFCs. >MAISER on a DEC-20 will choke (has choked) on it. Nor can I send > MAIL FROM:<chip@tct.uucp> >as the envelope origin. "uucp" is not a valid top-level domain. See >RFC 1123 section 5.2.2 page 49. I can't argue here, I agree, completely. >I _can't_ send > From: chip@tct.uucp >in the headers. "uucp" is not a valid top-level domain. Similarly, > From: tct!chip >is insufficient due to no "@right.hand.side." See RFC 822 in several >places, such as the syntax grammar beginning section 4.1 page 17: the >"mailbox" spec must be properly dealt with. But, I/chip/tct-admin PUT chip@tct.UUCP in the From: If I can't get a reply, THAT IS MY PROBLEM!!!!! If I want a reply bad enough I can do two things: a) Put the correct Reply-To: in. (and hope attention gets paid to it) b) Register my site under the appropriate valid top-level domain and get an MX record. Since I assume you'd prefer you have everyone do (b), why encourage the tct.UUCP people from being lazy, and in the meantime, possibly mangle the From: beyond recognition. Whenever someone asks me how to reply to a munged address, I tell them they can't. I have no problem telling people on an Internet site that they can't send to *.UUCP. And then explaining all the kludges a couple of minutes later. >I hack headers as well as envelope because headers containing bogon, >unreal, and unregistered domains are invalid on the Internet. Your My headers, above, are invalid. I await the rubber stamp of CA*net... -- :!mcr!: | The postmaster never | So much mail, Michael Richardson | resolves twice. | so few cycles. mcr@julie.UUCP/michael@fts1.UUCP/mcr@doe.carleton.ca -- Domain address - Pay attention only to _MY_ opinions. - registration in progress.
rickert@mp.cs.niu.edu (Neil Rickert) (12/14/90)
In article <1990Dec14.064837.8996@Latour.Sandelman.OCUnix.On.Ca> fts1!latour!mcr@alfred.ccs.carleton.ca writes: >In article <KARL.90Dec13123956@giza.cis.ohio-state.edu> karl_kleinpaste@cis.ohio-state.edu writes: >>Let's assume that "tct" is a UUCP neighbor of "osu-cis." Let's assume >>that chip@tct.uucp sends mail aimed at, say, osu-cis!ucbvax!somebody. >>Headers read: >> From: chip@tct.uucp >> To: osu-cis!ucbvax!somebody >>... > > But, I/chip/tct-admin PUT chip@tct.UUCP in the From: > If I can't get a reply, THAT IS MY PROBLEM!!!!! > No, it is not JUST your problem. If someone finds they can't reply, they may look at the 'Received:' headers, and send mail to 'Postmaster@cis.ohio-state.edu' to ask for assistance. Karl doesn't need the extra work this will entail. If you want to send mail to 'ucbvax' and have an unrepliable 'From: ' header, that is your choice. All you need do is negotiate a uucp connection to ucbvax, and pay your own long distance charges. But if you prefer to use the services of another host to do your relaying you have a responsibility to make sure your headers conform to the standards of that relay host. And if you fail to meet that obligation, the relay host has every right to correct those header to ensure that they do meet its standards. Hell, just because you can drive in your own driveway without license plates, and can drive in my driveway without license plates, that doesn't mean you can use the highways all the way between your place and mine without using license plates. > If I want a reply bad enough I can do two things: > a) Put the correct Reply-To: in. (and hope attention gets paid to it) > b) Register my site under the appropriate valid top-level domain >and get an MX record. > > Since I assume you'd prefer you have everyone do (b), why encourage >the tct.UUCP people from being lazy, and in the meantime, possibly >mangle the From: beyond recognition. Correction - Karl does not mangle the headers beyond recognition. The headers emerge form tct.UUCP in a near unrecognizable form, and Karl modifies them to make them clearly and plainly recognizable. If what is on the 'From:' header is so precious to you, why don't you insert an additional copy in the body of the mail. Karl won't touch it there. > mcr@julie.UUCP/michael@fts1.UUCP/mcr@doe.carleton.ca -- Domain address Talking of munged addresses, why don't you fix this one. Otherwise some novice is going to send mail to it, with 3 '@' and two '/' symbols and all. (Yes, I am being serious. I have had to deal with users who have sent to exactly such strings as addresses). -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115. +1-815-753-6940
barmar@think.com (Barry Margolin) (12/15/90)
In article <1990Dec14.064837.8996@Latour.Sandelman.OCUnix.On.Ca> fts1!latour!mcr@alfred.ccs.carleton.ca writes: > But, I/chip/tct-admin PUT chip@tct.UUCP in the From: > If I can't get a reply, THAT IS MY PROBLEM!!!!! While it may be your bug, it is the other person's problem. He wants to send you a reply, and has to hunt down a mail guru to figure out how to address it. He can't even contact you to ask what the correct address is, unless he knows how to reach you by some medium other than email. Here's a situation that you haven't addressed: what if the message is going to multiple recipients, using different mail protocols having different address conventions. For instance, To: foo!bar!baz!user1, user2@quux.dom.ain Further, assume the baz system is on the UUCP network, so only understands UUCP bang-paths, while quux.dom.ain is on the Internet and only understands RFC-822 addresses. The same "From" field can't be used when forwarding the message to both addresses, because one of them won't be able to reply to it. Furthermore, one of the To addresses needs to be munged, because most user agents provide the option of including all the original recipients as secondary recipients of the reply. Sendmail is an application-level protocol-translating gateway. There wouldn't be much controversy over an SMTP<->X.400 gateway munging headers; it's an obvious part of the job. Why do you expect less of a UUCP<->SMTP gateway? The header requirements and interpretation mechanisms of the two protocols are not identical, and it is the job of a gateway to transform a message coming in via one protocol into a valid message for the other protocol. -- Barry Margolin, Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar
lear@turbo.bio.net (Eliot) (12/15/90)
mcr@Latour.Sandelman.OCUnix.On.Ca (Michael Richardson) writes: >>I _can't_ send >> From: chip@tct.uucp >>in the headers. "uucp" is not a valid top-level domain. Similarly, >> From: tct!chip >>is insufficient due to no "@right.hand.side." See RFC 822 in several >>places, such as the syntax grammar beginning section 4.1 page 17: the >>"mailbox" spec must be properly dealt with. > But, I/chip/tct-admin PUT chip@tct.UUCP in the From: > If I can't get a reply, THAT IS MY PROBLEM!!!!! I disagree. You don't have to abide by the standards - the gateway site does. It is the gateway's responsibility to see that headers are conformant to the environment the message is about to enter. For example, it is Karl's responsibility to make sure that mail to Compuserv is conformant with their standards, not yours. > If I want a reply bad enough I can do two things: > a) Put the correct Reply-To: in. (and hope attention gets paid to it) > b) Register my site under the appropriate valid top-level domain >and get an MX record. (a) is pointless; you might as well substitute a proper from line. (b) is highly recommended. > Since I assume you'd prefer you have everyone do (b), why encourage >the tct.UUCP people from being lazy, and in the meantime, possibly >mangle the From: beyond recognition. I would think that when tct finds out that someone is mangling their from lines, they will do their best to correct the situation. To me, that is positive incentive towards fixing the problem. > Whenever someone asks me how to reply to a munged address, I tell >them they can't. I have no problem telling people on an Internet site >that they can't send to *.UUCP. And then explaining all the kludges >a couple of minutes later. This is negative incentive for change, exactly opposite of what you arguing for, above. Why should the people in .UUCP bother to fix themselves when others are continually finding new kludges to skirt around the brain damage? -- Eliot Lear [lear@turbo.bio.net]
les@chinet.chi.il.us (Leslie Mikesell) (12/15/90)
In article <1990Dec14.174541.14252@Think.COM> barmar@think.com (Barry Margolin) writes: >Sendmail is an application-level protocol-translating gateway. There >wouldn't be much controversy over an SMTP<->X.400 gateway munging headers; >it's an obvious part of the job. Why do you expect less of a UUCP<->SMTP >gateway? The header requirements and interpretation mechanisms of the two >protocols are not identical, and it is the job of a gateway to transform a >message coming in via one protocol into a valid message for the other >protocol. I think there will be controversy if the SMTP<->X.400 gateways can't invert the necessary mappings. That is, if one SMTP host sends to an X.400 forwarder who sends to another host that sends by SMTP to the destination and the headers are no longer usable. This appears to be the case that people are complaining about with the UUCP<->SMTP gateways. The munging necessary to keep the internet happy is not being done in a way that allows it to be undone at the other end, nor is there any way for the original munger to know what form the recipient wants (how, for example would you know that les@fb.com is 3 uucp hops off the internet and would greatly prefer to see From: les@chinet.uucp rather than From: chinet!les@some.domain?). The latter form is likely to undergo some very strange transformations along the way that you internet people never see. Les Mikesell les@chinet.chi.il.us
rickert@mp.cs.niu.edu (Neil Rickert) (12/15/90)
In article <1990Dec14.233316.11292@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >the UUCP<->SMTP gateways. The munging necessary to keep the internet >happy is not being done in a way that allows it to be undone at the >other end, nor is there any way for the original munger to know >what form the recipient wants (how, for example would you know >that les@fb.com is 3 uucp hops off the internet and would greatly >prefer to see From: les@chinet.uucp rather than > From: chinet!les@some.domain?). The latter form is likely to >undergo some very strange transformations along the way that >you internet people never see. There is absolutely nothing in the protocols, or in the behavior of 'sendmail' that would prevent you sending out your email as: From: les@chinet.uucp To: someone@somewhere ----------------------- Date: 10 BC. From: les@chinet.uucp To: someone@somewhere Subject: Whatever you feel like. The text of your message. ............... I guarantee that sendmail will not change the second set of 'headers'. And I am pretty sure your smart enough to quickly grind out a shell script or two that the recipient could use to delete the munged headers you don't like. Now what exactly is all this griping about? -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115. +1-815-753-6940
mrm@sceard.Sceard.COM (M.R.Murphy) (12/16/90)
In article <KARL.90Dec13123956@giza.cis.ohio-state.edu> karl_kleinpaste@cis.ohio-state.edu writes: >chip@tct.uucp writes: [the rewrite header argument deleted to save bandwith, such as it is...] If somebody sends you a message with bogus addressing from your view, bounce it back to them with a "This is bogus to me, please rewrite your freaking headers and re-try. Thank you so much.". Don't rewrite the headers. If you can't transport the way you want you are entirely within your rights and privileges to bounce the message. Re-write could be considered rude. Besides, it looks like the percentage of sites that can successfully rewrite is vanishingly small. Note that this is then a negative feedback system. The bouncee will either get the hint, will find another transport path, will stop sending mail, will install a better mailer, or will just enter an honest profession. I think all of this rewrite stuff is just people indirectly boasting that they can understand sendmail. -- Mike Murphy mrm@Sceard.COM ucsd!sceard!mrm +1 619 598 5874
lear@turbo.bio.net (Eliot) (12/16/90)
rickert@mp.cs.niu.edu (Neil Rickert) claims the following: > There is absolutely nothing in the protocols, or in the behavior of >'sendmail' that would prevent you sending out your email as: >From: les@chinet.uucp >To: someone@somewhere See RFC 1123 (in particular 5.2.18): ... o Some systems fail to fully-qualify domain names in messages they generate. The right-hand side of an "@" sign in a header address field MUST be a fully-qualified domain name. For example, some systems fail to fully-qualify the From: address; this prevents a "reply" command in the user interface from automatically constructing a return address. DISCUSSION: Although RFC-822 allows the local use of abbreviated domain names within a domain, the application of RFC-822 in Internet mail does not allow this. The intent is that an Internet host must not send an SMTP message header containing an abbreviated domain name in an address field. This allows the address fields of the header to be passed without alteration across the Internet, as required in Section 5.2.6. >Date: 10 BC. >From: les@chinet.uucp >To: someone@somewhere >Subject: Whatever you feel like. ... > I guarantee that sendmail will not change the second set of > 'headers'. Unless you are claiming that in fact your headers are in the ext of the message, this is all a matter of how one (mis)configures sendmail through either the cf (many bad ones floating around, out there) or through IDA, seismo, or other extensions. -- Eliot Lear [lear@turbo.bio.net]
les@chinet.chi.il.us (Leslie Mikesell) (12/17/90)
In article <1990Dec13.131236.25304@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: > Sure. And when I relay Internet mail to 'uucpnode', and a user on >'uucpnode' does a R(eply), my machine gets to relay a lot of the >uucpnode's local mail back to it, since that node doesn't understand >the form of address on the header so sends it to its forwarding relay >for interpretation. I don't think I follow this. Can you give a real example? Do you mean a case where a message from the internet side includes CC: 's to others on the same uucp machine but with the internet addressing form so that mailx's <R> generates a name for the local machine that the MTA doesn't know about? > If I am going to follow this procedure I had better start charging real >money for relay services. I will probably pick up quite a bit of cash >just from this stupid 'local relaying'. There's nothing wrong with charging for services, but I can't imagine that the group reply problem would happen often enough to worry about. Certainly not often enough to do something that will break other software. For example if you change "user@domain" to site!usr and pass it on to a path where some of the hosts prepend their own uucp names to the line. In that case, the original would be usable but what they will receive may not be. (For direct neighbors this shouldn't make much difference). > Some day the >uucpsite admin is going to complain that with this improved service >(of not munging headers) that I am charging him for, something funny is >happening - he is not getting many replies to mail. Probably because >all of those Internet sites having difficulty replying to 'uucpsite!user'. If headers aren't munged, you will never see a From: uucpsite!user. The sending site would just use a local form (if any). As long as you can resolve the replies coming back through you, I see no problem with munging to user%site@your.domain but it would be a lot nicer if someone had thought about inverting the mappings before the standards were written. At least it's better than path!user@your.domain which is almost certain to be munged and/or interpreted incorrectly if it is forwarded off the internet (incorrectly isn't quite the right word since that type of address doesn't have a defined meaning outside of SMTP, but if I hand it to a program named "rmail" on a uucp machne, I wouldn't expect it to look past the first "!".) Les Mikesell les@chinet.chi.il.us
les@chinet.chi.il.us (Leslie Mikesell) (12/17/90)
In article <1990Dec14.145021.2116@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: > If you want to send mail to 'ucbvax' and have an unrepliable 'From: ' header, >that is your choice. All you need do is negotiate a uucp connection to >ucbvax, and pay your own long distance charges. In practice, this is seldom possible. How, for example, would I getting a link to the IBM hosts on BITNET where my users want to exchange mail? I suspect that if it were not for the internet, a standardized modem-based mail exchange facility would have been developed years ago. >But if you prefer to use >the services of another host to do your relaying you have a responsibility >to make sure your headers conform to the standards of that relay host. And >if you fail to meet that obligation, the relay host has every right to >correct those header to ensure that they do meet its standards. No one is complaing about how the package is bundled in transport, just about how it looks when delivered (and only one portion of the transport knows when delivery is complete). Les Mikesell les@chinet.chi.il.us
barmar@think.com (Barry Margolin) (12/17/90)
In article <1990Dec15.213806.26607@sceard.Sceard.COM> mrm@Sceard.COM (M.R.Murphy) writes: >Note that this is then a negative feedback system. The bouncee will either get >the hint, will find another transport path, will stop sending mail, will >install a better mailer, or will just enter an honest profession. What world do you live in? The user has little of no control over what his mail system generates. All the bouncee will do is get frustrated. He may complain to his system vendor, and the vendor *might* fix it in the following release, and if he's lucky that will be as little as six months later. There's a good reason why people implement kludges. -- Barry Margolin, Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar
chip@tct.uucp (Chip Salzenberg) (12/18/90)
According to rickert@mp.cs.niu.edu (Neil Rickert): >In article <2766B2E7.276@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >> >>2. A message passing through your domain on its way to my domain >> should be left alone, without ANY modifications to the message >> AT ALL except for the envelope. >> > >Sure. And when I relay Internet mail to 'uucpnode', and a user on >'uucpnode' does a R(eply), my machine gets to relay a lot of the >uucpnode's local mail back to it, since that node doesn't understand >the form of address on the header so sends it to its forwarding relay >for interpretation. Assuming that the 'uucpnode' to which Mr. Rickert refers is a UUCP-only site that doesn't understand RFC822 addresses, then it is true by definition that an RFC822 address field will be unrepliable when it arrives at 'uucpnode.' However, the policy that Mr. Rickert supports -- pessimistically rewriting all mail headers for the greatest common denominator, namely, stock Unix /bin/mail -- disinfranchises all those UUCP sites who have registered domains under the Internet DNS. Furthermore, 'uucpnode' may not be the final destination of the message. It is not a good idea to assume anything about the final site based simply on the identity of the next hop in a bang path. I contend that rewriting "user@host.valid.domain" into "host.valid.domain!user" in the *header* is a Bad Thing because: 1. Any people who are exchanging mail with Internet sites had better understand RFC822 addresses, if only in their minds, or else they're not going to have much success anyway. 2. UUCP is only a transport. Sites which are fully compliant with all relevant Internet standards for E-Mail should not have their headers munged just because their mail is transported via UUCP. In other words, a site's choice of mail transport should not affect the address format. If unmunged mail headers result in bang-only sites having some problems with replying to mail, then I say: "Let them install smail." -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
rickert@mp.cs.niu.edu (Neil Rickert) (12/18/90)
In article <1990Dec16.203543.22769@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >In article <1990Dec13.131236.25304@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: > >> Sure. And when I relay Internet mail to 'uucpnode', and a user on >>'uucpnode' does a R(eply), my machine gets to relay a lot of the >>uucpnode's local mail back to it, since that node doesn't understand >>the form of address on the header so sends it to its forwarding relay >>for interpretation. > >I don't think I follow this. Can you give a real example? Do you For example, you have the Internet name 'chinet.chi.il.us' and the UUCP name of 'chinet'. Your system is prbably set up well enough to recognize both names as local. But not all systems are. Suppose you didn't recognize 'chinet.chi.il.us' as local. Then if I leave 'To: les@chinet.chi.il.us' on the header, and you reply to all header addresses, your mailer wouldn't recognize the address as local so would send it back to a relay for reinterpretation. If you were a UUCP neighbor of mine, I would automatically rewrite 'chinet.chi.il.us' as 'chinet.UUCP' on all header destined for you, until I was sure you could properly recognize the address as local. >If headers aren't munged, you will never see a From: uucpsite!user. The Maybe that's true from your site, but not from others. >sending site would just use a local form (if any). As long as you >can resolve the replies coming back through you, I see no problem with >munging to user%site@your.domain but it would be a lot nicer if someone I sure hope they have changed it by now. But the last time I tried, mail addressed to user%site bounced with host unknown, while mail addressed to site!user went though. The site was not 'chinet', but it was bounced by either 'oddjob' or 'gargoyle', which are forwarders for your domain. >had thought about inverting the mappings before the standards were written. >At least it's better than path!user@your.domain which is almost certain >to be munged and/or interpreted incorrectly if it is forwarded off the >internet (incorrectly isn't quite the right word since that type of address >doesn't have a defined meaning outside of SMTP, but if I hand it to a program >named "rmail" on a uucp machne, I wouldn't expect it to look past the first >"!".) Hey, we agree. I wouldn't send 'path!user@my.domain' via rmail unless I knew that it would work for that host. I might send 'path!user', or 'myuucpname!path!user', but I don't mix '@' and '!' in an address using UUCP transport unless I have verified that they will be recognized correctly by the receiving domain. -------------- Actually, if 'chinet' were a UUCP neighbor, and sent mail for me to relay to Internet, I would rewrite 'From: les@chinet.UUCP' as one of 'From: chinet!les@mp.cs.niu.edu', or 'From: les%chinet.UUCP@mp.cs.niu.edu' or 'From: les%chinet@mp.cs.niu.edu'. But it would be my choice, not yours. (I believe I am currently using the second of these forms). However, since 'chinet' is not my UUCP neighbor, I rewrite 'From: les@chinet.UUCP' as 'From: les@chinet.UUCP'. The difference is that for my UUCP neighbors I have an obligation of making their addresses useable by Internet hosts, and of providing a route back to them. But for a UUCP address which is not a neighbor, I have no such obligation to provide a return route. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115 +1-815-753-6940
rickert@mp.cs.niu.edu (Neil Rickert) (12/18/90)
In article <1990Dec16.205033.23565@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >No one is complaing about how the package is bundled in transport, just >about how it looks when delivered (and only one portion of the transport >knows when delivery is complete). > This is really at the heart of the disagreement. The UUCP protocols do not specify a header. The Internet protocols do. If you don't like what Internet processing does, just design your mail software so that each message begins with '\n'. Then what you think of as header that should not be touched will really be part of the body where they will not be touched. The Internet forwarder you use will create some headers for you. The recipient domain can always discard all the Internet headers and the '\n' if it likes, and you will have an unchanged messaged at the receiving end, just as you want it. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115 +1-815-753-6940
chip@tct.uucp (Chip Salzenberg) (12/18/90)
My original contention: > 2. A message passing through your domain on its way to my domain > should be left alone, without ANY modifications to the message > AT ALL except for the envelope. According to karl_kleinpaste@cis.ohio-state.edu: >I _can't_ send > MAIL FROM:<tct!chip> >in SMTP because it lacks "@right.hand.side" as required by the RFCs. > >I _can't_ send > From: chip@tct.uucp >in the headers. "uucp" is not a valid top-level domain. Similarly, > From: tct!chip >is insufficient due to no "@right.hand.side." Okay. I concede that Karl is right for the example he gives. Let me put forth two more examples, and see what would happen. 1. Let us suppose that the hypothetical machine "tct" with UUCP connection to "osu-cis" has just been registered under the domain TCT.COM. (I hope to do so shortly.) In that case, my hypothetical message will arrive at osu-cis with the envelope: From tct!chip but the header will be valid RFC822: From: chip@tct.com Will this header be rewritten into a bang path just because the mail came in from UUCP? I expect that it won't, since it's already RFC822. 2. (This is the example that sparked my original suggestion.) If mail from BAR.COM is being delivered to TCT.COM via UUCP from osu-cis, will the headers: From: foo@bar.com To: chip@tct.com be rewritten into bang paths just because my site's transport of choice is UUCP? This munging is *not* necessary. It is, in my opinion, rude to mung headers of UUCP sites which are cooperative enough to register with the DNS and comply with RFC822. -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
chip@tct.uucp (Chip Salzenberg) (12/18/90)
According to barmar@think.com (Barry Margolin): > To: foo!bar!baz!user1, user2@quux.dom.ain > >Further, assume the baz system is on the UUCP network, so only understands >UUCP bang-paths ... The primary fallacy in this line of reasoning is the assumption that a site reachable via UUCP cannot deal with RFC822 addresses. >Sendmail is an application-level protocol-translating gateway. There >wouldn't be much controversy over an SMTP<->X.400 gateway munging headers; >it's an obvious part of the job. Why do you expect less of a UUCP<->SMTP >gateway? Because UUCP is just a transport. It doesn't have its own address format. Common implementations of mail over UUCP use the bang path as an envelope format, but the From:, To:, etc. lines can all be RFC822-compliant without any tribble -- er, trouble -- at all. Yes, bang paths in headers must be domainized before they are allowed to propagate across the Internet. But RFC822 messages need no munging at all to be propagated via UUCP. None at all. -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
mcr@Latour.Sandelman.OCUnix.On.Ca (Michael Richardson) (12/18/90)
In article <1990Dec15.154618.7378@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: > There is absolutely nothing in the protocols, or in the behavior of >'sendmail' that would prevent you sending out your email as: > >From: les@chinet.uucp >To: someone@somewhere > >----------------------- >Date: 10 BC. >From: les@chinet.uucp >To: someone@somewhere >Subject: Whatever you feel like. > > The text of your message. > > ............... > > I guarantee that sendmail will not change the second set of 'headers'. And Following this argument, NONE OF the headers are needed. I need only get the argument to rmail/SMTP RCPT TO: right. I have a question for Karl though (just to add some non-flame content to my message ;-) If you are MX'ing for someone for which you have a UUCP link with them, does it get turned into some.where.com!user@ohio-state.edu? No right? So if .UUCP went away, header munging would be a non-issue? UUCP would still be used as a transport agent though. Assuming that the uux/rmail interface was deemed to be bad, and one went the BSMTP route, would we then have lots of problems with the smart-host'ing being done (or have to do a massive coordination effort), or would source routes suddenly become popular again? I'm of the opinion that it is better to ship Unix without mail and assume that they can figure out Configure and make and install something, or to include a domain only version that also includes the .com/.us/.ca/etc. registration forms (for turnkey systems.) > Now what exactly is all this griping about? The simple desire to have From: lines left alone. If they MUST be rewritten, have the decency to rename the old header or something. -- :!mcr!: | The postmaster never | - Pay attention only Michael Richardson | resolves twice. | to _MY_ opinions. - HOME: mcr@sandelman.ocunix.on.ca + If that doesn't work, try: WORK: michael@fts.ocunix.on.ca + fts1!michael, mcr@doe.carleton.ca
les@chinet.chi.il.us (Leslie Mikesell) (12/18/90)
In article <47340@apple.Apple.COM> fair@Apple.COM (Erik E. Fair) writes: >However, I wouldn't try to run a medium-complex mail >installation (e.g. Apple Computer) without sendmail on the key systems >because there are no alternatives with its power and flexibility, for >those who are competant enough to make correct use of it. Have you investigated smail 3.1 (a very different thing than smail 2.5)? My impression (without much exposure to sendmail) is that it is more powerful than standard sendmail, especially in a uucp environment, but perhaps less flexible than sendmail + IDA. I'd like to see a real point by point comparison, though, if anyone has had the fortitude to tackle both in depth. Les Mikesell les@chinet.chi.il.us
les@chinet.chi.il.us (Leslie Mikesell) (12/18/90)
In article <1990Dec17.183615.3887@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: > For example, you have the Internet name 'chinet.chi.il.us' >and the UUCP name of 'chinet'. Your system is prbably set up well >enough to recognize both names as local. But not all systems are. >Suppose you didn't recognize 'chinet.chi.il.us' as local. Then if I >leave 'To: les@chinet.chi.il.us' on the header, and you reply to all >header addresses, your mailer wouldn't recognize the address as local >so would send it back to a relay for reinterpretation. > If you were a UUCP neighbor of mine, I would automatically rewrite >'chinet.chi.il.us' as 'chinet.UUCP' on all header destined for you, until >I was sure you could properly recognize the address as local. Hmmm, I thought that the big argument for having a registered domain name was that it gave you an absolute address (i.e. interpreted the same everywhere). If the gateways are going to eat the names on the way out that concept sort of disappears. Besides, "real" uucp machines won't understand "machine.uucp" as their own names either. But, let's look at something a little more complicated, where the domain name actually hides many uucp hosts. For example I have set up fb.com through uunet, and everything destined for anyone@fb.com is actually delivered to uucp machine "afbf05" which happens to be a local call to uunet (D.C. area) but in fact most of the mail is destined for one of several machines in the Park Ridge IL area connected by a satellite link. All of the machines know how to resolve any variation of user@fb.com (just like a local address, everybody is in the aliases file), but it would clearly be wrong to change To: user@fb.com to user@afbf05.uucp when in fact the user isn't there. Delivery would not be affected of course, but you will force exactly the problem you are claiming to be fixing - if someone does a group reply it's going to bounce through the DC machine just to get back to the local host. >>If headers aren't munged, you will never see a From: uucpsite!user. The > Maybe that's true from your site, but not from others. True, but only because there is not a clear standard. Someone has gone out of their way to break things in the transport just to keep an already broken user agent happy. What's worse is that some sites do prepend their name and others don't, so that form is rarely usable anyway. I always use the uucp From_ line for replies which seems reliable with things that have come through uunet. Group replies are more problematic. > I sure hope they have changed it by now. But the last time I tried, >mail addressed to user%site bounced with host unknown, while mail addressed >to site!user went though. The site was not 'chinet', but it was bounced by >either 'oddjob' or 'gargoyle', which are forwarders for your domain. I don't doubt it and I suppose you really can't complain about '%' not working. But.... If you are doing the munging into user%site@your.domain it is your host that will be called upon to interpret the reply since you have guaranteed that it will come back through you. Thus it doesn't matter that others don't know how to resolve it (in fact it may be an advantage). >Actually, if 'chinet' were a UUCP neighbor, and sent mail for me to >relay to Internet, I would rewrite 'From: les@chinet.UUCP' as >one of 'From: chinet!les@mp.cs.niu.edu', or >'From: les%chinet.UUCP@mp.cs.niu.edu' or 'From: les%chinet@mp.cs.niu.edu'. >But it would be my choice, not yours. (I believe I am currently using the >second of these forms). What do you expect to happen when the "site!user@domain" form goes back off the internet down a path to a uucp destination? Say you get a message with a destination of fb.com or chinet.chi.il.us from your uucp neighbor. In the case of chinet, it will arrive with a couple of other hostnames prepended to the From: line making a correct interpretation impossible. In the case of fb.com it will look pretty much the way you write it but my machines deliberately interpret the !-path first to accomodate a broken (but not replacable) UA that generates group replies by making a path back to the sending machine prepended to the To: and CC: addresses. (But my reply to the sender will work anyway because it will use the uucp From_ line). >However, since 'chinet' is not my UUCP neighbor, I rewrite >'From: les@chinet.UUCP' as 'From: les@chinet.UUCP'. > The difference is that for my UUCP neighbors I have an obligation of making >their addresses useable by Internet hosts, and of providing a route back to >them. But for a UUCP address which is not a neighbor, I have no such >obligation to provide a return route. I would be a little more comfortable if this was worded more like: "I don't modify les@chinet.UUCP because I have no naming authority for chinet.UUCP." And this is precisely why I would like to see the uucp <-> internet gateway machines set up domain names solely for the purpose of mapping their uucp neighbors into convenient domain style names. In that case you would not only have the "authority" to map the names, you would be able to do it without undocumented or ambiguous kludges. Les Mikesell les@chinet.chi.il.us
rickert@mp.cs.niu.edu (Neil Rickert) (12/18/90)
In article <276D0D6A.6581@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >According to rickert@mp.cs.niu.edu (Neil Rickert): >>In article <2766B2E7.276@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >>> >>>2. A message passing through your domain on its way to my domain >>> should be left alone, without ANY modifications to the message >>> AT ALL except for the envelope. >>> >> >>Sure. And when I relay Internet mail to 'uucpnode', and a user on >>'uucpnode' does a R(eply), my machine gets to relay a lot of the >>uucpnode's local mail back to it, since that node doesn't understand >>the form of address on the header so sends it to its forwarding relay >>for interpretation. > >Assuming that the 'uucpnode' to which Mr. Rickert refers is a >UUCP-only site that doesn't understand RFC822 addresses, then it is >true by definition that an RFC822 address field will be unrepliable >when it arrives at 'uucpnode.' > >However, the policy that Mr. Rickert supports -- pessimistically >rewriting all mail headers for the greatest common denominator, >namely, stock Unix /bin/mail -- disinfranchises all those UUCP sites >who have registered domains under the Internet DNS. > No where did you get the idea that I support "pessimistically rewriting all mail headers for the greats common denominator" -- I never said that, and I don't practice that. Just because I support the premise that at times they should be rewritten, don't jump to the conclusion that I always do so. For example, I have a UUCP neighbor, with uucp name of 'earth'. (This is NOT the earth.UUCP in the maps). If you send mail to say 'root@geol.niu.edu', and it arrives at my site with headers: To: root@geol.niu.edu From: chip@tct.uucp then it will be forwarded to earth!root with exactly the same headers. If, on the other hand, you address your message to 'root@earth.uucp' and it reaches my site, it won't finish up at the geology department at all - it will go the the 'earth.uucp' on the maps. Please don't jump to conclusions and put words in my mouth that I never said. >Furthermore, 'uucpnode' may not be the final destination of the >message. It is not a good idea to assume anything about the final >site based simply on the identity of the next hop in a bang path. > >I contend that rewriting "user@host.valid.domain" into >"host.valid.domain!user" in the *header* is a Bad Thing because: > If I see mail with a header address 'user@host.valid.domain', and I am forwarding it to a host which does not understand RFC822 addresses, I WILL rewrite that as 'host.valid.domain!user'. The fact that uucpnode may not be the final destination is AN IMPORTANT PART of the reason. For 'uucpnode' is very likely to blindly stick 'uucpnode!' in front of the address. This totally massacres the RFC822 format address, but does no serious harm to the form changed into bang notation. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115 +1-815-753-6940
rickert@mp.cs.niu.edu (Neil Rickert) (12/18/90)
In article <1990Dec18.071226.20809@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >In article <1990Dec17.183615.3887@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: > >> If you were a UUCP neighbor of mine, I would automatically rewrite >>'chinet.chi.il.us' as 'chinet.UUCP' on all header destined for you, until >>I was sure you could properly recognize the address as local. > >Hmmm, I thought that the big argument for having a registered domain >name was that it gave you an absolute address (i.e. interpreted the >same everywhere). If the gateways are going to eat the names on the >way out that concept sort of disappears. Besides, "real" uucp machines >won't understand "machine.uucp" as their own names either. Serves me right for trying to save a few words. The address would actually be written to 'machine!user'. I DO want you to register a domain name. I want it so badly, that even if your software isn't ready for it you should do it, and I will transform the addresses so that you software doesn't need to deal with it. As I said, I will only convert headers to UUCP format until I know that your software is ready to deal with domain name formats. >But, let's look at something a little more complicated, where the domain >name actually hides many uucp hosts. For example I have set up >fb.com through uunet, and everything destined for anyone@fb.com is >actually delivered to uucp machine "afbf05" which happens to be a >local call to uunet (D.C. area) but in fact most of the mail is >destined for one of several machines in the Park Ridge IL area connected >by a satellite link. All of the machines know how to resolve any >variation of user@fb.com (just like a local address, everybody is in >the aliases file), but it would clearly be wrong to change To: user@fb.com >to user@afbf05.uucp when in fact the user isn't there. Delivery would >not be affected of course, but you will force exactly the problem you >are claiming to be fixing - if someone does a group reply it's going >to bounce through the DC machine just to get back to the local host. Yes, but if you domain is set up this way, it presumably CAN handle domain names. As I said, I will preserve domain name formatted headers to a uucp neighbor as soon as I know they are set up to handle them correctly. >>Actually, if 'chinet' were a UUCP neighbor, and sent mail for me to >>relay to Internet, I would rewrite 'From: les@chinet.UUCP' as >>one of 'From: chinet!les@mp.cs.niu.edu', or >>'From: les%chinet.UUCP@mp.cs.niu.edu' or 'From: les%chinet@mp.cs.niu.edu'. >>But it would be my choice, not yours. (I believe I am currently using the >>second of these forms). > >What do you expect to happen when the "site!user@domain" form goes back off >the internet down a path to a uucp destination? Say you get a message I expect the internet -> UUCP gateway to transform the address to 'site!user' if the gateway happens to be 'domain', and to transform it to 'domain!site!user' (or perhaps 'gateway!domain!site!user') otherwise. Most Internet to UUCP gateways do this, Chip Salzenberg to the contrary notwithstanding. In that case prepending another 'node!' by a site along the way doesn't totally massacre the address. >In the case of fb.com it will look pretty much the way you write it but >my machines deliberately interpret the !-path first to accomodate a >broken (but not replacable) UA that generates group replies by making >a path back to the sending machine prepended to the To: and CC: addresses. >(But my reply to the sender will work anyway because it will use the >uucp From_ line). Oh. You mean that while complaining about everyone else's software, you own software is hopelessly broken! > >>However, since 'chinet' is not my UUCP neighbor, I rewrite >>'From: les@chinet.UUCP' as 'From: les@chinet.UUCP'. >> The difference is that for my UUCP neighbors I have an obligation of making >>their addresses useable by Internet hosts, and of providing a route back to >>them. But for a UUCP address which is not a neighbor, I have no such >>obligation to provide a return route. > >I would be a little more comfortable if this was worded more like: "I don't >modify les@chinet.UUCP because I have no naming authority for chinet.UUCP." I don't rewrite 'les@chinet.UUCP' as 'les@chinet.chi.il.us' because I have no naming authority for chinet. I don't rewrite it as 'les%chinet.UUCP@mp.cs.niu.edu' because chinet is not my uucp neighbor so I have no obligation to provide a route. (Does that make you happier? I didn't think it would). If chinet were my neighbor, I would consider rewriting 'les@chinet.UUCP' as 'les@chinet.chi.il.us', but this would be a matter of discussion. I would not do such renaming if chinet objected. But in that case I would provide the extra routing. >And this is precisely why I would like to see the uucp <-> internet gateway >machines set up domain names solely for the purpose of mapping their >uucp neighbors into convenient domain style names. In that case you would >not only have the "authority" to map the names, you would be able to do >it without undocumented or ambiguous kludges. As pointed out by others, the name space for which I have authority to create names may not be an appropriate name space for my UUCP neighbors. This is a side effect of the organizational orientation of the Internet names. Had there instead been a purely geographical name allocation this would be easier. But organization name structure do have benefits, as your experience with 'fb.com' illustrates. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115 +1-815-753-6940
barmar@think.com (Barry Margolin) (12/19/90)
In article <276D13B4.6732@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >According to barmar@think.com (Barry Margolin): >> To: foo!bar!baz!user1, user2@quux.dom.ain >>Further, assume the baz system is on the UUCP network, so only understands >>UUCP bang-paths ... >The primary fallacy in this line of reasoning is the assumption that a >site reachable via UUCP cannot deal with RFC822 addresses. Sorry, I should have said "and" instead of "so". Many UUCP sites only recognize bang paths. >>Sendmail is an application-level protocol-translating gateway. There >>wouldn't be much controversy over an SMTP<->X.400 gateway munging headers; >>it's an obvious part of the job. Why do you expect less of a UUCP<->SMTP >>gateway? > >Because UUCP is just a transport. It doesn't have its own address >format. Common implementations of mail over UUCP use the bang path as >an envelope format, but the From:, To:, etc. lines can all be >RFC822-compliant without any tribble -- er, trouble -- at all. UUCP is the name of a protocol *suite* (the transport layer protocols have names like "UUCP g-protocol"). Yes, RFC822-compliant messages are included in that suite, but there's no requirement that hosts using the UUCP mail transfer protocol recognize such addresses. They are expected to recognize almost-RFC822 messages that use bang paths, and to transform such headers en route (removing the current host from the beginning of destination paths, and adding it to the beginning of other paths). Part of the problem, of course, is that there is no precise specification of the requirements of UUCP hosts. The UUCP network is anarchistic, and that's what allowed it to grow so rapidly. But it also means that there is an enormous variety of implementations and versions out there, and it is frequently necessary to cater to common denominators. A gateway with only a few UUCP neighbors could probably have a database indicating which neighbors can handle RFC822 messages, and not mung the headers when forwarding there. But maintaining such a database for backbone sites with many neighbors is probably more work than most system administrators are willing to put up with (at many sites, support of the UUCP gateway is not a high priority, and is only tolerated by management so long as it doesn't impact the regular job). -- Barry Margolin, Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar
jdeitch@jadpc.cts.com (Jim Deitch) (12/19/90)
In article <1990Dec18.045058.18758@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >In article <47340@apple.Apple.COM> fair@Apple.COM (Erik E. Fair) writes: > >>However, I wouldn't try to run a medium-complex mail >>installation (e.g. Apple Computer) without sendmail on the key systems >>because there are no alternatives with its power and flexibility, for >>those who are competant enough to make correct use of it. > >Have you investigated smail 3.1 (a very different thing than smail 2.5)? >My impression (without much exposure to sendmail) is that it is more >powerful than standard sendmail, especially in a uucp environment, but >perhaps less flexible than sendmail + IDA. I'd like to see a real >point by point comparison, though, if anyone has had the fortitude >to tackle both in depth. > >Les Mikesell > les@chinet.chi.il.us You are partly right. Smail 3.1 is VERY nice, easy to configure, easy to maintain. Your normal system manager can have it running from source in about 2 hours. The hardest part is editing the config file. They even have a test configuration that you build, the system installs in a place you specify, then you can test it at your leisure. When you are satisfied that all is well, remake without the test config flag set and install. Real simple. Out of the box the configurations supplied will not have to be modified except for weird circumstances, arcnet, bsmtp over uucp, etc. My only gripe is that when using smtp you start it just like sendmail (sendmail -bd -q30m), but you need to have an entry in your cron file to check for mail that has been delayed and re-try delivery. Other than that, the documentation is good, it is easy to maintain, and bug-free. Just my 2 cents worth. Jim -- ARPANET: jadpc!jdeitch@nosc.mil INTERNET: jdeitch@jadpc.cts.com UUCP: nosc!jadpc!jdeitch
les@chinet.chi.il.us (Leslie Mikesell) (12/19/90)
In article <1990Dec18.155353.5024@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: >>What do you expect to happen when the "site!user@domain" form goes back off >>the internet down a path to a uucp destination? > I expect the internet -> UUCP gateway to transform the address to >'site!user' if the gateway happens to be 'domain', and to transform it to >'domain!site!user' (or perhaps 'gateway!domain!site!user') otherwise. Most >Internet to UUCP gateways do this, Chip Salzenberg to the contrary >notwithstanding. In that case prepending another 'node!' by a site along the >way doesn't totally massacre the address. That's correct for the uucp "envelope" (From_ line and rmail destination of course, but it is as bad for my mailer to see something like that in the headers as it is for yours - would you do that to a local delivery? In any case, this doesn't seem to be handled consistantly. Some sites leave the site!user@domain form in the headers which is pretty much a disaster any way you look at it. Also, many sites will prepend their names in the headers *only* if there is already a "!" there. >>In the case of fb.com it will look pretty much the way you write it but >>my machines deliberately interpret the !-path first to accomodate a >>broken (but not replacable) UA that generates group replies by making >>a path back to the sending machine prepended to the To: and CC: addresses. >>(But my reply to the sender will work anyway because it will use the >>uucp From_ line). > > Oh. You mean that while complaining about everyone else's software, you >own software is hopelessly broken! Broken is kind of a harsh word - let's say the UA is optimized for relative addressing. It expects to find To: and Cc: addresses the way the sender wrote them and constructs group replies by using the From_ line to build a path back to the originating site, then tacking on whatever the sender used and optimizing away the redundent hops. From the uucp perspective that you *can't* know anything beyond your neighbors, that is the correct approach but of course alternate names for the same machines make it less than optimal. It is clear that this approach will not work at all though, if the addresses the sender put on the To: and Cc: lines have been altered in transport. In any case this particular UA (AT&T's PMX-mailers) has some functions that aren't available in anything else that I've seen (multiple binary attachments, versions that run on PC's with background communications, etc.) and I don't have source, so anything that needs to be fixed has to be done at the transport level. Also, I have to be able to continue to talk to the attmail service which wants and generates uucp-looking headers. Regarding your suggestion in another thread about putting an additional set of headers in the body portion of the message, this UA would be upset if anything touches the body. It inserts a Content-Length: header and expects to be able to use it to separate attachments. > As pointed out by others, the name space for which I have authority to >create names may not be an appropriate name space for my UUCP neighbors. >This is a side effect of the organizational orientation of the Internet >names. What I am suggesting is that you create a new domain solely for the purpose of establishing an organization where none currently exits. The intent of the organization would be to maintain sanity in the mail system. Les Mikesell les@chinet.chi.il.us
rickert@mp.cs.niu.edu (Neil Rickert) (12/19/90)
In article <1990Dec19.061836.8692@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >In article <1990Dec18.155353.5024@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: >> As pointed out by others, the name space for which I have authority to >>create names may not be an appropriate name space for my UUCP neighbors. >>This is a side effect of the organizational orientation of the Internet >>names. > >What I am suggesting is that you create a new domain solely for the >purpose of establishing an organization where none currently exits. >The intent of the organization would be to maintain sanity in the >mail system. > As long as you can plug your pocket calculator into a modem and instantly become part of the UUCP pseudo-network, no organization can possibly exist. If you want organization you need an enforced central registry, enforced standards, etc. But the current chaos has proved very productive - lets not break it just yet. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115 +1-815-753-6940
mrm@sceard.Sceard.COM (M.R.Murphy) (12/19/90)
In article <1990Dec18.155353.5024@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: [...] > I expect the internet -> UUCP gateway to transform the address to >'site!user' if the gateway happens to be 'domain', and to transform it to >'domain!site!user' (or perhaps 'gateway!domain!site!user') otherwise. Most >Internet to UUCP gateways do this, Chip Salzenberg to the contrary >notwithstanding. In that case prepending another 'node!' by a site along the >way doesn't totally massacre the address. Prepend node! to the "From ", not to the "From: ". Don't mung valid RFC822 addresses. Bounce invalid RFC822 addresses if you feel like it. I think that it is a service and a long term favor to do so. Or let the site that doesn't understand the address bounce the message. Don't rewrite RFC822 addresses based on transport. That way prepending 'node!' doesn't massacre the address at all, since it isn't prepended. If it ends up being a real problem, and the communication is life or death, then there is always the telephone, which can be used to communicate to set up a direct mail connection :-) -- Mike Murphy mrm@Sceard.COM ucsd!sceard!mrm +1 619 598 5874
les@chinet.chi.il.us (Leslie Mikesell) (12/20/90)
In article <1990Dec18.182210.12980@Think.COM> barmar@think.com (Barry Margolin) writes: >A gateway with only a few UUCP neighbors could probably have a database >indicating which neighbors can handle RFC822 messages, and not mung the >headers when forwarding there. Small sites like uunet perhaps??? Fortunately that is exactly the case there. They will send your choice of From: uunet!domain!user or user@domain. And they leave the To: lines pretty much the way the sender wrote them. Unfortunately it seems that not everyone knows how to rewrite the uucp From_ line independently from the From: header line. Les Mikesell les@chinet.chi.il.us
les@chinet.chi.il.us (Leslie Mikesell) (12/20/90)
In article <276D0D6A.6581@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >However, the policy that Mr. Rickert supports -- pessimistically >rewriting all mail headers for the greatest common denominator, >namely, stock Unix /bin/mail -- disinfranchises all those UUCP sites >who have registered domains under the Internet DNS. Actually, the original /bin/mail does not use anything in the headers nor does it even require headers to be present. Replies are constructed using the From_ line(s). Since error returns are virtually always sent back the envelope-from (the collapsed From_ line path) in uucp mail, a working mail connection requires this to generate a usable route back to the sender. This remains true regardless of any header munging - if you don't get a working envelope the connection is badly broken. The perverse systems that would be helped by munging are using a version of mailx that attempts to generate replies using the header From: but neither it nor the local transport understand the things that are likely to appear there if you have a link to systems bound by the requirements of RFC822. I contend that the envelope return should be used by uucp sites unless they are quite sure that the headers are always usable. Keep in mind that if this doesn't work, the sender isn't going to get any error message if he misspells the user name. >I contend that rewriting "user@host.valid.domain" into >"host.valid.domain!user" in the *header* is a Bad Thing because: > 1. Any people who are exchanging mail with Internet sites had > better understand RFC822 addresses, if only in their minds, > or else they're not going to have much success anyway. Not necessarily true. RFC976 style addressing works quite well (path!domain!user) to connect non-RFC822 uucp sites to ones that use domain addressing, as long as the relevant machines handle that form correctly. Thus the inversion doesn't really hurt anything (i.e. if your uucp site understands RFC822, it should also understand RFC976). The real problem is that this form is much more likely to have additional changes made to it as it is forwarded on to the destination. Still, if you build the replies from the envelope, it doesn't matter. The unresolved problem is what to do about group replies. Uucp demands relative addressing since you don't have a handy name service claiming to know every other machine in the universe. Thus you have to build routes in the context of the original sender - a goal that is at odds with absolute addressing. If you admit the existence of unregistered machines, then you have build the group addresses from the To: and Cc: lines by sending back to the originating machine and letting it interpret them. This is pretty much impossible if anyone has touched those headers before you get them. > 2. UUCP is only a transport. Sites which are fully compliant with > all relevant Internet standards for E-Mail should not have their > headers munged just because their mail is transported via UUCP. > >In other words, a site's choice of mail transport should not affect >the address format. Unfortunately that isn't the case, and I don't see anything that can be done about it at this point. Perhaps anyone who mungs the headers should be required to insert an X-Original-From: (etc.) so that the final delivery agent could put if back. Otherwise there is a serious loss of information. >If unmunged mail headers result in bang-only sites having some >problems with replying to mail, then I say: "Let them install smail." In my case, smail 2.5 would not have sufficed, because it does not pass NULL characters and I need a binary transparent transport. Les Mikesell les@chinet.chi.il.us
les@chinet.chi.il.us (Leslie Mikesell) (12/20/90)
In article <1990Dec18.152151.29598@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: >If, on the other hand, you address your message to 'root@earth.uucp' >and it reaches my site, it won't finish up at the geology department at >all - it will go the the 'earth.uucp' on the maps. As it should. However, if that header line exists in a message that you pass over the internet, the information that you used to determine where it should be delivered will no longer exist. (At least if you re-write the site.uucp portion into something else). > If I see mail with a header address 'user@host.valid.domain', and I am >forwarding it to a host which does not understand RFC822 addresses, I WILL >rewrite that as 'host.valid.domain!user'. The fact that uucpnode may not >be the final destination is AN IMPORTANT PART of the reason. For 'uucpnode' >is very likely to blindly stick 'uucpnode!' in front of the address. This >totally massacres the RFC822 format address, but does no serious harm to the >form changed into bang notation. By itself, I see no problem with this. Handling domain!user and user@domain as fully equivalent makes perfect sense. However, the sites that prepend their own name may not be doing so blindly. They may in fact only do it when a "!" already exists in the header line. This is the case with smail 3 at least, but somewhere I recall seeing it mentioned that the reason was basically that most sendmail cf's handled it that way. Then the next site may not add their uucpname, and the recipient is left with an unqualified non-nieghbor site as the first hop in a path. Perhaps this isn't the case with your neighbors. Les Mikesell les@chinet.chi.il.us
rickert@mp.cs.niu.edu (Neil Rickert) (12/20/90)
In article <1990Dec19.162541.17566@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >Unfortunately it seems that not everyone knows how to rewrite the >uucp From_ line independently from the From: header line. > We are finally down to a more justifiable complaint about sendmail. It is part of the design that the address rewriting for the envelope addresses also applies to the header addresses. And envelope addresses must be appropriate for the transport. The IDA versions of sendmail fix that. They allow separate address rewriting for header and for envelope. They also support a dbm database to efficiently choose how messages to a specific domain are handled. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science <rickert@cs.niu.edu> Northern Illinois Univ. DeKalb, IL 60115 +1-815-753-6940
karl_kleinpaste@cis.ohio-state.edu (12/20/90)
chip@tct.uucp writes:
my hypothetical message will arrive at osu-cis with the envelope:
From tct!chip
but the header will be valid RFC822:
From: chip@tct.com
Will this header be rewritten into a bang path just because the mail
came in from UUCP? I expect that it won't, since it's already RFC822.
Any header of the form localpart@some.reasonable.domain (which
specifically does not include .uucp) will be left entirely unmolested.
My sendmail.cf will notice the proper form, and immediately depart the
ruleset without modifying the address. (Or, perhaps more precisely,
it will rewrite it in exactly the form in which it was found. Either
way, a semantically null operation.)
2. (This is the example that sparked my original suggestion.) If
mail from BAR.COM is being delivered to TCT.COM via UUCP from osu-cis,
will the headers:
From: foo@bar.com
To: chip@tct.com
be rewritten into bang paths just because my site's transport of
choice is UUCP?
Again, since it's in The Right Form, I don't touch it. If what I got
was rather more complex (e.g., host!user@some.domain), then some
rewrites may be necessary as the message departs via UUCP to avoid the
imaginary ambiguity of @-vs-! precedence, but I never mess with pure
user@dom.ain syntax.
--karl
keld@login.dkuug.dk (Keld J|rn Simonsen) (12/20/90)
chip@tct.uucp (Chip Salzenberg) writes: >However, the policy that Mr. Rickert supports -- pessimistically >rewriting all mail headers for the greatest common denominator, >namely, stock Unix /bin/mail -- disinfranchises all those UUCP sites >who have registered domains under the Internet DNS. >Furthermore, 'uucpnode' may not be the final destination of the >message. It is not a good idea to assume anything about the final >site based simply on the identity of the next hop in a bang path. What we do here is that we rewrite the headers in agreement with each uucp site connected to us (we have over 100 uucp sites connected). We have then a collection of Sendmail mailer specifications, indicating rewriting and other things such as character set of the mail body. Then we use the IDA sendmail "mailertable" file to specify in site basis these mailers. So we normally do quite some things to the mail itself. We normally domainizise the uucp address - put it into proper Intenet replyable addresses when receiving mail from a Danish uucp site, and maybe convert headers into some bangified address when sending mail to the uucp site. And then we convert the body to the agreed character set, such as ASCII, Danish ASCII, ISO 8859-1, IBM CP 850 or 60 other character sets. Keld Simonsen
chip@tct.uucp (Chip Salzenberg) (12/21/90)
According to rickert@mp.cs.niu.edu (Neil Rickert): >No where did you get the idea that I support "pessimistically rewriting >all mail headers for the greats common denominator" -- I never said that, >and I don't practice that. Well, I apologize for jumping to conclusions. Having read further messages from Mr. Rickert, I see that he refuses to rewrite addresses that arrive via UUCP unless the host part of the address specifies one of his neighbor sites. I have no objection to this policy. On the other hand, Mr. Rickert also writes: >If I see mail with a header address 'user@host.valid.domain', and I am >forwarding it to a host which does not understand RFC822 addresses, I WILL >rewrite that as 'host.valid.domain!user'. The fact that uucpnode may not >be the final destination is AN IMPORTANT PART of the reason. For 'uucpnode' >is very likely to blindly stick 'uucpnode!' in front of the address. Let's analyze the situation described here. As a message moves from site to site via UUCP, each site's mailer can (1) understand or (2) not understand RFC822. In the first case -- a "smart uucp" site -- the mailer will recognize valid RFC822 addresses and leave them alone. This is so because a properly configured Sendmail will only prepend "host!" to an address that already contains a bang. (Note that sites with broken Sendmail configurations are not a valid excuse to mangle headers. They may be a pain, but they're not an excuse.) In the second case -- a "dumb uucp" site -- the mailer will not know that the RFC822 headers even exist, since it is concerned only with the message envelope. It therefore will not prepend "host!" to the RFC822 addresses in the header. Therefore, according to the preceding analysis, there is no reason ever to rewrite a valid RFC822 address into a bang path. What have I missed? -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
chip@tct.uucp (Chip Salzenberg) (12/21/90)
According to les@chinet.chi.il.us (Leslie Mikesell): >Actually, the original /bin/mail does not use anything in the >headers nor does it even require headers to be present. I knew the /bin/mailx story. Blaming /bin/mail was a thinko. Sorry. >The perverse systems that would be helped by munging are using >a version of mailx that attempts to generate replies using the >header From: but neither it nor the local transport understand >the things that are likely to appear there if you have a link >to systems bound by the requirements of RFC822. Yes, well, mailx is broken, isn't it? To my knowledge, the very existence of the From: header is an Internet (i.e. RFC822) invention. So a mailer that uses From: but can't deal with RFC822 is simply brain dead. More to the point, it is not a valid excuse for munging everyone else's headers. Before flaming me for this point of view, please remember that Mush and Elm are freely available and are good enough to be used as replacements for mailx. >I contend that the envelope return should be used by uucp sites >unless they are quite sure that the headers are always usable. Well, that's great, unless replies are to be routed according to a local paths database, like here. So we use Reply-To: and From:. Unfortunately, due to the header munging I decry, I found it necessary to add to Elm a "domainize" feature, which converts "x!y!z" to "z@y". I don't consider this Rabid Rerouting, incidentally, because it is done in the User Agent at user request. >>I contend that rewriting "user@host.valid.domain" into >>"host.valid.domain!user" in the *header* is a Bad Thing because: >> 1. Any people who are exchanging mail with Internet sites had >> better understand RFC822 addresses, if only in their minds, >> or else they're not going to have much success anyway. > >Not necessarily true. RFC976 style addressing works quite well >(path!domain!user) to connect non-RFC822 uucp sites to ones >that use domain addressing, as long as the relevant machines >handle that form correctly. Note that I said "people", not "mailers". The *people* at that site will see Usenet signatures that say "user@valid.domain", and they will eventually learn the meaning of that address form and will learn the local incantation for sending mail to such an address. So since people have to deal with domain addresses from signatures and business cards, I see no problem with asking them to do the same for addresses found in Reply-To: headers. >>In other words, a site's choice of mail transport should not affect >>the address format. > >Unfortunately that isn't the case, and I don't see anything that can >be done about it at this point. Forgive me, but I don't see that this statement has any supporting evidence. Surely it doesn't assert that a UUCP-based mail link is incapable of complying with RFC822? >In my case, smail 2.5 would not have sufficed, because it does not >pass NULL characters and I need a binary transparent transport. Sending non-ASCII in a mail message is just asking for trouble. And I don't mean only from UUCP mailers. -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
chip@tct.uucp (Chip Salzenberg) (12/21/90)
According to barmar@think.com (Barry Margolin): >UUCP is the name of a protocol *suite* (the transport layer protocols have >names like "UUCP g-protocol"). Yes, RFC822-compliant messages are included >in that suite, but there's no requirement that hosts using the UUCP mail >transfer protocol recognize such addresses. As I noted at length in another message, the "dumb UUCP" sites about which everyone seems so worried won't even notice that the RFC822 headers exist, because dumb UUCP sites *only* care about the envelope. It is a known and acknowledged fact that dumb UUCP sites require bang paths in the envelope. Rewriting the envelope is therefore required. No problem. So what does that have to do with RFC822 headers? Nothing, that's what. Munging addresses in *headers* just because dumb UUCP sites need bang paths in the *envelope* is misdirected at best. -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
brian@ucsd.Edu (Brian Kantor) (12/21/90)
Our rmail has been taught to believe that any bangist address in a From: line arriving via uucp is likely to be wrong, so it substitutes the From_ path in place of it. It also does that if there is no domain, the domain is "uucp", or there is no From: line. This is passed to sendmail, which converts the bangist path in the arriving From: line to bangist!path@ucsd.edu (RFC822 compliant) for internal processing, which is unaltered when the mail is sent out via an SMTP connection, and which is converted to ucsd!bangist!path when the mail is forwarded using uucp. If the mail arriving via uucp contains a From: line like host@dom.ain, rmail does not alter it at all before passing it to sendmail, and when it leaves via uucp, we choose the greatest common denominator and issue it as ucsd!dom.ain!host in the outgoing From: line, and as "From dom.ain!host date remote from ucsd" in the uucp From line. This provides the most widely-usable form of headers for people forwarding mail through us. It may thwart some attempts to use magic routers for uucp (some cope, some don't), but few of our uucp connections run them, since we provide that service. I find this to be a good set of compromises, and on the whole, satisfactory. Brian Kantor UCSD Postmaster brian@ucsd.edu BRIAN@UCSD ucsd!brian
pcg@cs.aber.ac.uk (Piercarlo Grandi) (12/21/90)
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:<tct!chip@cis.ohio-state.edu>
kleinpaste> RCPT TO:<somebody@ucbvax.berkeley.edu>
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:<uucp-gateway@cis.ohio-state.edu>
RCPT TO:<somebody@ucbvax.berkeley.edu>
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
les@chinet.chi.il.us (Leslie Mikesell) (12/22/90)
In article <1990Dec19.124545.26165@mp.cs.niu.edu> rickert@mp.cs.niu.edu (Neil Rickert) writes: > As long as you can plug your pocket calculator into a modem and instantly >become part of the UUCP pseudo-network, no organization can possibly exist. >If you want organization you need an enforced central registry, enforced >standards, etc. Well, X.400 promises to give us a system complicated enough that only large organizations will be able to use it. If that is the goal, all we have to do is wait. I'm trying to propose an alternative to an enforced central registry with a central standard enforcing "lowest common denominator" standards. That alternative is for certain sites to act as hubs, allowing ad-hoc communications on either side and providing gateway services as needed. This makes it trivial to add and delete sites since only the local hub needs to know about it, and gives a certain degree of freedom to the sites local to each hub. That physical organization already exists around internet <-> uucp gateway sites. Making the organization logical as well seems like it would be a good thing for all concerned. > But the current chaos has proved very productive - lets not break it just yet. As the ratio of computers to users approaches 1:1 the current system will break all by itself. Les Mikesell les@chinet.chi.il.us
les@chinet.chi.il.us (Leslie Mikesell) (12/22/90)
In article <1990Dec19.154652.11573@sceard.Sceard.COM> mrm@Sceard.COM (M.R.Murphy) writes: >Prepend node! to the "From ", not to the "From: ". Don't mung valid RFC822 >addresses. Bounce invalid RFC822 addresses if you feel like it. I think that it >is a service and a long term favor to do so. Or let the site that doesn't >understand the address bounce the message. Don't rewrite RFC822 addresses based >on transport. That way prepending 'node!' doesn't massacre the address at all, >since it isn't prepended. In mail from mrm@Sceard.COM I received a copy of the headers from a message I had sent to him earlier. I know that the From: line left chinet looking like: From: les@chinet.chi.il.us (Leslie Mikesell) What he got was: From: Leslie Mikesell <ucsd!gargoyle.uchicago.edu!chinet.chi.il.us!les> Are we having fun yet? >If it ends up being a real problem, and the communication is life or death, then >there is always the telephone, which can be used to communicate to set up a >direct mail connection :-) Not always - you may want to mail to a site where modems aren't available (or allowed) or you may have no common communications protocol. Les Mikesell les@chinet.chi.il.us
les@chinet.chi.il.us (Leslie Mikesell) (12/22/90)
In article <27710AE7.1356@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >>I contend that the envelope return should be used by uucp sites >>unless they are quite sure that the headers are always usable. >Well, that's great, unless replies are to be routed according to a >local paths database, like here. So we use Reply-To: and From:. In practice, it should be pretty rare that the recipient's response should go a different route than an error return. If the Reply-To: is munged as well and you want to use it, then you have a problem. Using !-notation for the addressing is not at odds with paths routing, though. >Unfortunately, due to the header munging I decry, I found it necessary >to add to Elm a "domainize" feature, which converts "x!y!z" to "z@y". >I don't consider this Rabid Rerouting, incidentally, because it is >done in the User Agent at user request. I'm not arguing *for* header munging - I don't think any host should prepend their own name to the header lines. But if it were not for encouraging that practice I wouldn't object to the domain!user re-write. >Forgive me, but I don't see that this statement has any supporting >evidence. Surely it doesn't assert that a UUCP-based mail link is >incapable of complying with RFC822? Given the proper support software there is no particular problem in delivering to domain style addresses and assuming you have a registered domain name there is no problem in putting it in the From: line. The place where the philosophical difference arises is when you want to generate a group-reply from the To: and Cc: lines. The domain philosophy says that the addresses are absolute and can be simply extracted and used as-is (assuming they haven't been modified in transport). The uucp philosophy says that addresses are relative to the sender and are only valid in the sender's context. So, my mailer will happily deliver a message like so: To: attmail!somewhere!someone Cc: someone@machine.bitnet Can anyone's mailer handle a group reply to that? >>In my case, smail 2.5 would not have sufficed, because it does not >>pass NULL characters and I need a binary transparent transport. >Sending non-ASCII in a mail message is just asking for trouble. And I >don't mean only from UUCP mailers. No, it's asking to save non-trivial amounts of money by not having to ascii-ize everything, not to mention training everyone involved to know the difference between ascii and non-ascii. A seat-of-the pants guess is that it would raise our phone bills about $10K/year if everything that is being sent as attachments grew by a third from being encoded. I'd say that not being able to deliver whatever the mail transport receives is asking for trouble and will force you to either work around the limitations or provide an alternative service. Les Mikesell les@chinet.chi.il.us
barmar@think.com (Barry Margolin) (12/22/90)
In article <1990Dec21.193938.29940@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >In practice, it should be pretty rare that the recipient's response >should go a different route than an error return. You contradict this later in the same message: >The place where the philosophical difference arises is when you want >to generate a group-reply from the To: and Cc: lines. Which, in my experience, is extremely common. Most of the users here have their UA's reply command configured to do this by default. Another case that may be common in some organizations is a secretary sending mail for the boss; the envelope return address and the 822 Sender: field should be the secretary, but the From field should be the boss. Finally, mailing list exploders should arrange for error messages to go to the maintainer of the list, but replies should go to the author of the message. At various times during this discussion Post Office analogies have been used, so here's another (somewhat imperfect) one: the closest analogy to the email envelope is the PO's postmark. The From field is like the return address, the Reply-To field is the inside address, and the Sender field is the secretary's initials below the closing. > The domain >philosophy says that the addresses are absolute and can be simply >extracted and used as-is (assuming they haven't been modified in >transport). The uucp philosophy says that addresses are relative >to the sender and are only valid in the sender's context. So, >my mailer will happily deliver a message like so: > To: attmail!somewhere!someone > Cc: someone@machine.bitnet > >Can anyone's mailer handle a group reply to that? Only if the bang path is updated whenever the message is forwarded. A day or so ago, someone (maybe you) mentioned that pure UUCP hosts will only look at the From_ field. The reality is that few hosts are "pure UUCP". Most hosts using UUCP mail transport also have generic mail user agents (MH, MUSH, Emacs RMAIL, etc.). Because of the mix of protocols being used, most of these will recognize many different mail formats, and try to deal with them sensibly. If the message looks roughly like RFC-822 format they'll handle it; the UA rarely needs to parse the address portion of a header, all it has to do is hand it to the system's MTA. So, even though the To field in the above example is invalid 822 format there's no reason for a UA to mind; the UA expects the MTA to deliver messages containing addresses that it is willing to have returned to it. >>Sending non-ASCII in a mail message is just asking for trouble. And I >>don't mean only from UUCP mailers. >I'd say that not being able to deliver whatever the mail transport >receives is asking for trouble and will force you to either work >around the limitations or provide an alternative service. I don't know about UUCP mailers, but RFC-821 mailers are definitely text-only. Newlines are required to be converted to a standard format so that mail can be sent between systems with differing newline conventions, and not all such transformations are perfectly invertible. This is the reason the FTP protocol has an explicit command to perform binary transfers. RFC-821 also allows MTA software that has a fixed-size input line buffer by imposing a maximum line length (256 characters, I think). RFC-821 was designed for transfer of text mail; there are other protocols being developed to solve the more general problem. You can hammer a nail with a screwdriver, but don't complain to the screwdriver manufacturer if it's not easy. -- Barry Margolin, Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar
blarson@blars (12/22/90)
In article <25215@ucsd.Edu> brian@ucsd.Edu (Brian Kantor) writes: >Our rmail has been taught to believe that any bangist address in a From: >line arriving via uucp is likely to be wrong, so it substitutes the From_ >path in place of it. It also does that if there is no domain, the >domain is "uucp", or there is no From: line. Therefore breaking any mail message that purposly put a differnt evalope "From" (actually return) address. Mailing lists should put the moderator address in the envalope for bounce messages (broken bitnet mailers don't use this for the designed purpouse) and leave the From: and Reply-To: fields alone, so users can easily reply to the actual message sender. (Error-to: is an unneeded sendmail inovation which hopefully hasn't been duplicated elsewhere.) -- blarson@usc.edu C news and rn for os9/68k! -- Bob Larson (blars) blarson@usc.edu usc!blarson Hiding differences does not make them go away. Accepting differences makes them unimportant.
brian@ucsd.Edu (Brian Kantor) (12/23/90)
In article <151@blars> blarson@blars writes: >Therefore breaking any mail message that purposly put a differnt >evalope "From" (actually return) address. Mailing lists ... True (more or less), except that there is no capability in UUCP to have two addresses - there is only ONE from address, and that's the "remote from" line at the front of the message. Remember that a uucp site may ignore, correctly update, or hopelessly damage the From: line in mail headers (since it's not part of the transport spec), whereas the "remote from" is going to be correct. We don't fiddle RFC821 (SMTP) messages that way. The two-address scheme works just fine there. And we use it for all the many mailing lists we host here. BTW, why doesn't the From: line in your posting have a domain? "blarson@blars" isn't replyable from outside yours, you know. - Brian
oc@vmp.com (Orlan Cannon) (12/23/90)
In article <27710D99.140E@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: > >Munging addresses in *headers* just because dumb UUCP sites need bang >paths in the *envelope* is misdirected at best. This is indeed the crux of the matter. Intelligent munging of envelopes is considered "a good thing". The problem is with MUAs that insist on using RFC822 headers for replies but are distributed with MTAs that know nothing about RFC822 (or 976 or 1123, for that matter). AT&T, are you listening? Mailx knows about RFC822 headers and replies to the "From:" line. It passes the message to /bin/mail, which thinks it must be a strange local address... Munging the headers is just a defensive tactic against AT&T's errors. The fact that semi-intelligent MUAs and MTAs are freely available, at no cost, is avoiding the fact that most computer installations don't want to think about it. They don't want to have to install smail or elm or mush. They bought the system and that's that. The answer is to talk to your UUCP neighbors. Ask what kind of MTA or MUA they use. Mung the headers accordingly. Don't make a universal rule of it. We've got plenty of universal rules that work just fine. Local exceptions are *OK*. As long as *you and your neighbor* know what you're doing. Talking about it on the net doesn't help. Talking with your local UUCP neighbor does. UUNET, are you listening? -- Orlan Cannon oc@vmp.com Video Marketing & Publications, Inc. (800) 627-4551 Oradell, NJ 07649
blarson@blars (12/23/90)
In article <25250@ucsd.Edu> brian@ucsd.Edu (Brian Kantor) writes: >BTW, why doesn't the From: line in your posting have a domain? >"blarson@blars" isn't replyable from outside yours, you know. > - Brian It isn't replyable even on my own machine. blars is not a member of any domain or pseuto-domain, and doesn't yet have a working (to my satisfaction) mailer. I do have plans to fix this and join a real domain (probably .us), but since only one person posts from here, the temporary hack would be whatever magic rn needs to add the reply-to header automaticly. -- blarson@usc.edu C news and rn for os9/68k! -- Bob Larson (blars) blarson@usc.edu usc!blarson Hiding differences does not make them go away. Accepting differences makes them unimportant.
les@chinet.chi.il.us (Leslie Mikesell) (12/23/90)
In article <1990Dec22.014625.22543@Think.COM> barmar@think.com (Barry Margolin) writes: >> The uucp philosophy says that addresses are relative >>to the sender and are only valid in the sender's context. >> To: attmail!somewhere!someone >> Cc: someone@machine.bitnet >>Can anyone's mailer handle a group reply to that? >Only if the bang path is updated whenever the message is forwarded. On the contrary - the recipient's UA can easily construct the path back to the sending machine from the uucp From_ line, but then it can build the destination address only if the headers have been untouched. >A day or so ago, someone (maybe you) mentioned that pure UUCP hosts will >only look at the From_ field. I said that stock /bin/mail only uses the From_ line(s). >The reality is that few hosts are "pure >UUCP". Most hosts using UUCP mail transport also have generic mail user >agents (MH, MUSH, Emacs RMAIL, etc.). Perhaps, if you are talking about the set of machines that participate in usnet. There are lots of machines that just have what someone loads out of the box. Others have commercial alternatives like AT&T's PMX-mailers. >Because of the mix of protocols >being used, most of these will recognize many different mail formats, and >try to deal with them sensibly. If the message looks roughly like RFC-822 >format they'll handle it; the UA rarely needs to parse the address portion >of a header, all it has to do is hand it to the system's MTA. So, even >though the To field in the above example is invalid 822 format there's no >reason for a UA to mind; the UA expects the MTA to deliver messages >containing addresses that it is willing to have returned to it. It is exactly this mix of protocols that causes the problem, and any work-around requires an unfortunate intimacy between the MTA and the UA (and worse, your neighbors MTA). In particular, if the UA wants to handle the relative addressing portion, then the MTA has to leave the To: and Cc: headers alone. If the UA wants the addresses already relative to the local host, then the MTA has to fix them. But, if your MTA "fixes" them for your UA and also anything it passes to your neighbor who doesn't want them fixed, you have created a problem. A reasonable solution would be to adjust the paths so they are relative to the local machine only at final delivery and only if you know the locally used UA's want it that way. I can see a slight advantage in letting the MTA do it in that you may have alternate names for the local machine that the UA doesn't know about which may result in Cc:s to users on the same machine as the recipient having their reply routed back through the sender's host. However the MTA doesn't really know when delivery is complete since the first recipient may forward his copy on to someone else. [...non ascii] >I don't know about UUCP mailers, but RFC-821 mailers are definitely >text-only. Newlines are required to be converted to a standard format so >that mail can be sent between systems with differing newline conventions, >and not all such transformations are perfectly invertible. The uucp mail transport is built on top of a more general file transfer utility and thus will handle anything you throw at it. However, the normal /bin/mail program and the common replacements that parse the addresses and handle forwarding and local delivery are not binary-transparent. Mostly they will lose NULLs due to the way fgets/fputs works. I haven't had any problem with smail 3.1 and I'm using it's bsmtp over uucp on a couple of machines where large lists are active. So far no one has complained about any attachments failing to work when detached so it must be inverting the transformation properly. I don't really expect the attachments to work anywhere but my own uucp links and through the attmail service, but that's where the traffic is. >This is the >reason the FTP protocol has an explicit command to perform binary >transfers. But I don't have a network link and I don't want the users to have to wait for the operation to complete. My traffic tends to be about 100K/day with each of about 60 sites (basically one per state plus a few others) which makes it hard to justify anything but dial-up access. I also don't want to train users in 50 states how to transfer one type of file one way and another type another way and how to tell the difference. >RFC-821 was designed for transfer of text mail; there are other protocols >being developed to solve the more general problem. >You can hammer a nail with a screwdriver, but don't complain to the >screwdriver manufacturer if it's not easy. That portion of the AT&T PMX mailers works just fine. My problem was that I wanted to send mail to users on BITNET and have them reply using their normal reply command instead of having to retype the address as user%afbf05@uunet.uu.net. It turned out to be non-trivial to accomplish that without breaking the extensions provided by the PMX-mail programs, and there are still some unresolved loose ends (but that is a symptom of a more general problem). Les Mikesell les@chinet.chi.il.us
lear@turbo.bio.net (Eliot) (12/24/90)
99.9% of those people who use mailx will not read this message. Those of us who provide services to that (rather large) contingent can either try to force them to change their software (a remedy that many of them may nevver have tried) or allow for their braindamage. On the other hand, there should be no reason why those who have asked to be treated as smart mailers shouldn't be treated just so (I seem to recall the UUNET folks saying that they will treat smart mailers as smart mailers when approached). Mind you this is an argument neither for nor against aggressive rerouting. -- Happy Holidays! Eliot Lear [lear@turbo.bio.net]
chip@tct.uucp (Chip Salzenberg) (12/25/90)
According to les@chinet.chi.il.us (Leslie Mikesell): >In practice, it should be pretty rare that the recipient's response >should go a different route than an error return. Presumed rarity is not an argument against allowing for such a difference. In any case, it is *usually* true here that replies should go a different route, for these reasons: 1. Group replies. 2. Avoiding unreliable sites. 3. Avoiding rabid rerouters (rutgers and bionet). 4. Avoiding Mail Header Mungers From Hell (apple.com). 5. Avoiding pessimal paths generated by sites that aren't using up-to-date maps. For all these reasons, I will always use Reply-To: and From: addresses -- or if they've been munged, signature addresses -- rather than the From_ line. The From_ line is unsuitable anyway, because it is a path to the *sender*, who is not necessarily the user to whom replies should be sent. Thus, to get back to our original subject, it is Evil and Rude to mung an RFC822 address from user@valid.domain into valid.domain!user, because such munging renders impossible the *correct* handling of replies for RFC822-aware but UUCP-only sites. >Using !-notation for the addressing is not at odds with paths routing, >though. In itself, no. But, as you note in an unquoted portion of your article, bang notation is relative, whereas RFC822 notation is absolute. Thus @-to-! translation is a semantic change, not just a syntactic one. Therefore, gratuitous conversion of addresses from absolute to relative is (all together, now): Evil and Rude. -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
chip@tct.uucp (Chip Salzenberg) (12/25/90)
Brian Kantor describes UCSD's setup. Two items deserve comment: According to brian@ucsd.Edu (Brian Kantor): >Our rmail has been taught to believe that any bangist address in a From: >line arriving via uucp is likely to be wrong, so it substitutes the From_ >path in place of it. It also does that if there is no domain, the >domain is "uucp", or there is no From: line. This policy is justifiable, in my opinion, for the same reason that the behavior of mailx is not. The From: header is an RFC822 invention, and if you generate one, it should conform to RFC822. >If the mail arriving via uucp contains a From: line like host@dom.ain, >rmail does not alter it at all before passing it to sendmail, and when it >leaves via uucp, we choose the greatest common denominator and issue it >as ucsd!dom.ain!host in the outgoing From: line, and as >"From dom.ain!host date remote from ucsd" in the uucp From line. This policy, however, is totally unjustifiable. As RFC822 gains even wider acceptance among the non-Internet community, more and more UUCP-only sites will be registered with the DNS. Why, oh why, must a site registered with the DNS and complying with RFC822 in every way suffer the slings and arrows of outrageous header rewriting, just because they happen to use UUCP as their mail transport? -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
lear@turbo.bio.net (Eliot) (12/26/90)
[Forgive any missed arguments; I'm running on short expires, these days]. chip@tct.uucp (Chip Salzenberg) writes: >In any case, it is *usually* true here that replies >should go a different route, for these reasons: > 1. Group replies. > 2. Avoiding unreliable sites. > 3. Avoiding rabid rerouters (rutgers and bionet). > 4. Avoiding Mail Header Mungers From Hell (apple.com). > 5. Avoiding pessimal paths generated by sites that aren't > using up-to-date maps. (3) and (4) are just plain silly, if they get your mail to where it has to go (and I'll not accept that otherwise is the case unless you show me a failure involving my site). It's your machine, though, and it is always nice to see my name in bits ;-) >Thus, to get back to our original subject, it is Evil and Rude to mung >an RFC822 address from user@valid.domain into valid.domain!user, >because such munging renders impossible the *correct* handling of >replies for RFC822-aware but UUCP-only sites. Well, to use one of your earlier arguments, Chip, just look in the person's .sig or derive the information from the munged from:. Seriously, your mail will always be replyable under the RFC 976 method. This is *NOT* true under your scheme. Most people care about whether or not they will be able to reply to mail, not whether it will go through a path optimizer. To borrow from your hyperbole, it is evil and rude to make mail unreplyable. This isn't to say that you should have to deal with ! paths. You have the following remedies: [1] If your neighbor is doing this to you, either (a) ask to be treated as a Smart UUCP (generally possible) or (b) change neighbors. My understanding is that UUNET can cope with (a), as many sites. [2] If someone way upstream is doing this to you, (a) shortcut and x-late to domains or (b) execute [1] (b). >But, as you note in an unquoted portion of your >article, bang notation is relative, whereas RFC822 notation is >absolute. Thus @-to-! translation is a semantic change, not just a >syntactic one. So what? The real question is whether information is lost. The answer to that question based on RFC 1123 is NO (there used to be one exception). >Therefore, gratuitous conversion of addresses from >absolute to relative is (all together, now): Evil and Rude. See above. It's not gratuitous, and therefore not evil and rude. -- Happy Holidays! Eliot Lear [lear@turbo.bio.net]
les@chinet.chi.il.us (Leslie Mikesell) (12/27/90)
In article <1990Dec22.180814.10207@vmp.com> oc@vmp.com (Orlan Cannon) writes: >The answer is to talk to your UUCP neighbors. Ask what kind of >MTA or MUA they use. Mung the headers accordingly. Don't make >a universal rule of it. No, it's more complicated than this if the neighbor site forwards on to anyone else. While I consider a rewrite from user@domain to domain!user to be a harmless inversion, making things work with real-dumb mailx requires rewriting to site!domain!user (where site is the uucp name of the machine doing the rewriting). This does serious damage to anything that is forwarded on another hop. To make things even more complicated, the forwarding may be done by an alias or forward file on the apparent destination machine. >We've got plenty of universal rules that work just fine. Local >exceptions are *OK*. As long as *you and your neighbor* know >what you're doing. *And anyone your neighbor might forward to.* >Talking about it on the net doesn't help. It might. >Talking with your local UUCP neighbor does. UUNET, are you listening? In fact uunet will give you your choice of munged or unmunged headers but the choice made for the first hop may not be correct for the next. Les Mikesell les@chinet.chi.il.us
les@chinet.chi.il.us (Leslie Mikesell) (12/27/90)
In article <27763742.4907@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >For all these reasons, I will always use Reply-To: and From: addresses >-- or if they've been munged, signature addresses -- rather than the >From_ line. The From_ line is unsuitable anyway, because it is a path >to the *sender*, who is not necessarily the user to whom replies >should be sent. From the recipient's point of view it is impossible to tell if a header line has been munged or not. Thus your basis for choosing how to reply has a fatal flaw. >Thus, to get back to our original subject, it is Evil and Rude to mung >an RFC822 address from user@valid.domain into valid.domain!user, >because such munging renders impossible the *correct* handling of >replies for RFC822-aware but UUCP-only sites. I disagree here, although prepending a hostname makes any futher intelligent handling impossible. >But, as you note in an unquoted portion of your >article, bang notation is relative, whereas RFC822 notation is >absolute. Thus @-to-! translation is a semantic change, not just a >syntactic one. Therefore, gratuitous conversion of addresses from >absolute to relative is (all together, now): Evil and Rude. That's not quite what I said. I said uucp addresses are relative. The distinction between @ and ! notation is purely syntactic and a sensible MTA will be able to convert user@domain/domain!user (or a!b!c!d to @a,@b:d@c) transparently. The significant difference between relative and absolute addressing is whether the machine where the address was originally written and the machine interpreting it currently share a common naming service. On a uucp machine, that is only known to be true if both happen to be the same machine. As a matter of practicality you may want to interpret the existence of a dot in the machine name to mean that you can pretend that there can only be one such machine that you or some forwarding machine can identify specifically. (And of course internet forwarders that drop .uucp from headers blow away this choice...) Otherwise the only way to get it right is to send it back to the originating machine for interpretation (though it should be safe to chop out any a!b!a hops). This is strictly a UA issue though, since we are talking about taking the header addresses and doing something useful with them. As long as the From_ line contains a path to the sending machine and the other header lines contain more or less what the sender put there, the UA can construct working addresses of any form (!-path relative to sender, domain!user, path!to!smarthost!domain!user, etc.) based on it's best interpretation of what the original address meant at the sending machine. Note that if you deal with attmail you will get header lines with uucp paths that must be interpreted relative to the sending machine so pretending that everyone is one big happy RFC822 family is not possible. Les Mikesell les@chinet.chi.il.us
karl_kleinpaste@cis.ohio-state.edu (12/27/90)
mcr@Latour.Sandelman.OCUnix.On.Ca writes:
I have a question for Karl though (just to add some non-flame content
to my message ;-)
If you are MX'ing for someone
for which you have a UUCP link with them, does it get turned into
some.where.com!user@ohio-state.edu? No right?
So if .UUCP went away, header munging would be a non-issue?
UUCP would still be used as a transport agent though.
Assuming that the uux/rmail interface was deemed to be bad, and one
went the BSMTP route, would we then have lots of problems with
the smart-host'ing being done (or have to do a massive coordination
effort), or would source routes suddenly become popular again?
I've read this note about 5 times in as many days, trying to figure
out what direction you're going or what specific point you're trying
to make. I can't figure it out. That's not an attempt to be rude or
flame; I guess I'm just feeling extraordinarily dense about the
question you're asking -- I can't feel it out.
Anyone for whom I MX, who by definition generates RFC822 headers, gets
their RFC822 headers left intact, no molestation whatever. Anything
that's RFC-compliant is untouched, no matter what the origin: An
RFC-compliant To: line with From: local-dumb-uucp-host!username gets
the To: left alone while the From: may be hacked somewhat.
As far as my configuration is concerned, .uucp has almost entirely
gone away, because it recognizes u@h.uucp just long enough to turn it
into h!u. I don't see that header munging has become a non-issue as a
result.
As for BSMTP, I can contain the same semantic content in uux/rmail as
I can in a BSMTP package. In fact, I do it, for CompuServe -- the
final transport involves a modified BSMTP envelope which is understood
on the CServe side, even though the queueing to CServe was done by
uux/rmail. There is no problem from my perspective with either the
BSMTP or uux/rmail transport interface. I don't see any relationship
to questions of source routes.
Really, I don't know what question/problem you were getting at here.
Am I just yet more dense than usual?
--karl
oc@vmp.com (Orlan Cannon) (12/27/90)
In article <1990Dec26.160148.19573@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >In article <1990Dec22.180814.10207@vmp.com> oc@vmp.com (Orlan Cannon) writes: > >>The answer is to talk to your UUCP neighbors. Ask what kind of >>MTA or MUA they use. Mung the headers accordingly. Don't make >>a universal rule of it. > >No, it's more complicated than this if the neighbor site forwards on >to anyone else. > >>We've got plenty of universal rules that work just fine. Local >>exceptions are *OK*. As long as *you and your neighbor* know >>what you're doing. > >*And anyone your neighbor might forward to.* You are absolutely right here. There has to be a trickle-down effect. In bringing up these subjects with your UUCP neighbors, you should also be encouraging them to talk to their further downstream neighbors. >>Talking with your local UUCP neighbor does. UUNET, are you listening? > >In fact uunet will give you your choice of munged or unmunged headers >but the choice made for the first hop may not be correct for the next. Not exactly. UUNET will do what you tell them to do, but they will not offer you the choice unless *you* bring it up. Given their prominent position, if they were to distribute information or otherwise aid in educating their customers in what really happens to their mail once it goes out into the world, they might be able to make a real difference. More so than news postings that they may not read. -- Orlan Cannon oc@vmp.com Video Marketing & Publications, Inc. (800) 627-4551 Oradell, NJ 07649
chip@tct.uucp (Chip Salzenberg) (12/28/90)
According to lear@turbo.bio.net (Eliot): >chip@tct.uucp (Chip Salzenberg) writes: >>In any case, it is *usually* true here that replies >>should go a different route, for these reasons: >> 1. Group replies. >> 2. Avoiding unreliable sites. >> 3. Avoiding rabid rerouters (rutgers and bionet). >> 4. Avoiding Mail Header Mungers From Hell (apple.com). >> 5. Avoiding pessimal paths generated by sites that aren't >> using up-to-date maps. > >(3) and (4) are just plain silly, if they get your mail to where it >has to go ... If it makes you feel better, consider (3) and (4) a personal prejudice toward control of the routing of my own site's mail. In any case, the importance of (1), (2) and (5) is undeniable. Thus I still object to the rewriting of RFC822 addresses into bang paths. >>Thus, to get back to our original subject, it is Evil and Rude to mung >>an RFC822 address from user@valid.domain into valid.domain!user, >>because such munging renders impossible the *correct* handling of >>replies for RFC822-aware but UUCP-only sites. > >Seriously, your mail will always be replyable under the RFC 976 >method. This is *NOT* true under your scheme. I do not consider a bang path through unreliable and/or pessimal links to be "replyable." I wouldn't ever use such a path, nor do I appreciate any site's attempt to impose it on me. Yet that is the evident intent of RFC822-to-bang-path header munging. >Most people care about whether or not they will be able to reply to >mail, not whether it will go through a path optimizer. To borrow >from your hyperbole, it is evil and rude to make mail unreplyable. ("Path optimizer"?! That's one of the better euphemisms I've heard for "rabid rerouter." Your idea of optimal and mine may not agree.) The replyability of an RFC822 address cannot be improved by rewriting it into a bang path. Replyability most certainly can be degraded by such a transformation, however, as intermediate sites notice the bang format and (sometimes) prepend their own names, resulting in a bang path which is often incomplete or non-optimal. >The real question is whether information is lost. The answer to that >question based on RFC 1123 is NO (there used to be one exception). I agree that it is usually possible to determine the original RFC822 address given only a bang path a la RFC976. Information loss is not the only issue, however. In the address "bang!path!dom.ain!user", the _added_ information ("bang!path") is the problem, because it is very often an incomplete, pessimal or unreliable route. -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
fair@Apple.COM (Erik E. Fair) (12/28/90)
I think it's time I put in my take on this issue. In the referenced article, chip@tct.uucp (Chip Salzenberg) writes: >Brian Kantor describes UCSD's setup. Two items deserve comment: > >>If the mail arriving via uucp contains a From: line like host@dom.ain, >>rmail does not alter it at all before passing it to sendmail, and when it >>leaves via uucp, we choose the greatest common denominator and issue it >>as ucsd!dom.ain!host in the outgoing From: line, and as >>"From dom.ain!host date remote from ucsd" in the uucp From line. > >This policy, however, is totally unjustifiable. As RFC822 gains even >wider acceptance among the non-Internet community, more and more >UUCP-only sites will be registered with the DNS. Why, oh why, must a >site registered with the DNS and complying with RFC822 in every way >suffer the slings and arrows of outrageous header rewriting, just >because they happen to use UUCP as their mail transport? Because they're not using SMTP to do the transport. The UUCP E-mail protocols have different rules and requirements. Because we're in the middle of a protocol conversion, when the vast majority of sites still speak the old protocol (i.e. UUCP mail), and software delivered from the vendors still assumes that standard, rather than the Internet standards. Them's the facts of life. That's why I have apple.com configured to do the same thing as Brian Kantor describes. Like it or lump it. Until UUCP has vanished from the face of the earth, or until we're all using a "bsmtp" command to transfer mail over a UUCP transport instead of "rmail", we all must speak the UUCP protocols in the original when we speak UUCP. As it happens, there is latitude within the original protocols to put domain names in a form that everyone in the UUCP universe can use them (e.g. foo!dom.ain!user). Lucky us. If you and a neighbor agree to do something different across a UUCP connection, that's cool, but don't invoke it with the "rmail" command, because doing that is changing the protocol. You're not supposed to do that. It impedes interoperability. Definitely a "no no." But what I'm really wondering is why Salzenberg and the people who agree with him want all us kind, generous, charitable gateway/forwarder sites to do all the work for him? If you wanna be smart, take RFC976 to its logical conclusion, and convert the dom.ain!user stuff back to user@dom.ain at your site, for your mailers, and enjoy the fruits of that labor. You know your own site names and what a domain name is, so this is allowed, and easy to do. Small matter of software (or configuration, where sendmail is concerned). I did exactly this sort of thing when I was last a postmaster at a pure UUCP site, six years ago. So far as my local users were concerned, it looked like Internet, smelled like Internet, and worked like Internet. They were really happy, and I didn't burden my Internet gateway site's postmaster with my internal E-mail configuration problems. You're wasting your breath (or your keyboard fingers, as the case may be) trying to convince me to do it for you, and in so doing, break E-mail to every old UUCP site that I speak to. So the answer to the original question is: sendmail can and should mung any and every header that it needs to, in order to get the job done right without breaking everyone who is compliant with the appropriate protocols for the network that they're on. The fundamental problem is that there are perhaps 100 people who understand this well enough to get it right, but tens of thousands of sites where it has to be done right, with postmasters who think that because they have read chapter 5 of the "Sendmail Installation and Operation Guide", they are therefore qualified to hack sendmail config files (and after they get it wrong, some of them even have the temerity to argue with those of us who got it right years ago!). You should see what I have to do to get E-mail in and out of AppleLink. Sometimes the transformations are just not reversible, because the destination E-mail system is too brain damaged, and it's so old and entrenched that no one will change it enough to make it work right. I expect that Delphi, CompuServe, MCImail, and GEnie will/do have similar problems in this regard. UUCP E-mail has the opposite problem - it's too simple, too close to the Internet standard, and too malleable, so people believe it can be hacked into being the Internet standard. Sorry folks, 'taint so. If that's what you want, use BSMTP over UUCP instead. Happy New Year, Erik E. Fair apple!fair fair@apple.com Apple Postmaster P.S. Karl, finish the book!
karl_kleinpaste@cis.ohio-state.edu (12/28/90)
chip@tct.uucp writes: >The real question is whether information is lost. The answer to that >question based on RFC 1123 is NO (there used to be one exception). I agree that it is usually possible to determine the original RFC822 address given only a bang path a la RFC976. Information loss is not the only issue, however. In the address "bang!path!dom.ain!user", the _added_ information ("bang!path") is the problem, because it is very often an incomplete, pessimal or unreliable route. So ignore the bang!path portion. My users never even see that part, because of this, in sendmail.cf: S3 ... # # Strip many-hop !-paths to the right-most FQDN; DARR. # R$*.$*!$*@$* $1.$2!$3 lose @-portion R$*!$*.$*!$* $2.$3!$4 strip excess left-hand R$*.$*!$* $3@$1.$2 invert to @-format This converts bang!path!dom.ain!user to user@dom.ain, that is, it undoes an RFC976 conversion. --karl
les@chinet.chi.il.us (Leslie Mikesell) (01/01/91)
In article <277A64CD.4C4B@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >In any case, the importance of (1), (2) and (5) is undeniable. Thus I >still object to the rewriting of RFC822 addresses into bang paths. How would you handle the RFC822-legal path!user@domain syntax when handing it to a uux-ed rmail? It is almost certain to mean something different to at least some of the uucp sites in the forwarding path and it will certainly be destroyed by any site that chooses to prepend its uucp name. >I agree that it is usually possible to determine the original RFC822 >address given only a bang path a la RFC976. Information loss is not >the only issue, however. In the address "bang!path!dom.ain!user", the >_added_ information ("bang!path") is the problem, because it is very >often an incomplete, pessimal or unreliable route. Philosophically, I don't like any form of rerouting other than to the specified "next-hop" host, but realistically it is probably better to re-route to the right-most FQDN. That should only fail under a couple of circumstances: (1) the user really wanted the specified routing for testing or avoiding a known problem with the usual routing. (2) the end point has a name with a period in it but can't be found by your routing technique. The second problem could mostly be avoided by forcing the address to be resolved before throwing away the specified route (but this is not possible if a smart-host handles routing but a secondary site is making the decision unless at least a list of top-level domains is kept everywhere). As for the first problem, it would be nice if there were some syntax for specifying that you really want the given route to be used so they could be handled differently than the paths generated by newsreaders, etc.. Les Mikesell les@chinet.chi.il.us
lear@turbo.bio.net (Eliot) (01/01/91)
les@chinet.chi.il.us (Leslie Mikesell) writes: >Philosophically, I don't like any form of rerouting other than to the >specified "next-hop" host, but realistically it is probably better >to re-route to the right-most FQDN. Yes, this should be reasonable, but how you look for an FQDN is very important, as one of the problems you list in your article that I reference is that other things can have dots in their names. In general, I short circuit by looking for recognized top level domains. Basically, I have a class that defines them all. Admittedly, it slows down my mailer just a bitk, and if someone else uses a system that looks and smells like ours but isn't, then a message could conceivably be lost. There is one failure that has occurred in the past when one short circuits, that is really caused by people using forwarders without their knowledge or permission. Example: From: lear@turbo.bio.net (some random internet site) To: 2030@x001.z76.fidonet.org (some fidonet site) If an intermediate site translates 2030@x001.z76.fidonet.org to ucbvax!uunet!rutgers!apple!well!x001.z76.fidonet.org!2030, unless prior arrangements have been made, it is quite likely that the address will be rewritten back to 2030@x001.z76.fidonet.org. A mailer loop. -- Eliot Lear [lear@turbo.bio.net]
chip@tct.uucp (Chip Salzenberg) (01/01/91)
According to les@chinet.chi.il.us (Leslie Mikesell): >In article <27763742.4907@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >>For all these reasons, I will always use Reply-To: and From: addresses >>-- or if they've been munged, signature addresses ... > >From the recipient's point of view it is impossible to tell if a header >line has been munged or not. It's just a guess based on experience. I answer the question, "Does that look right?" For "a!b@c", or "a!b!!!", etc. the answer is: "No." >>Thus, to get back to our original subject, it is Evil and Rude to mung >>an RFC822 address from user@valid.domain into valid.domain!user ... > >I disagree here, although prepending a hostname makes any futher >intelligent handling impossible. Such a rewrite cannot improve the address, yet it can easily degrade it, due to the Slings And Arrows Of Outrageous Header Munging (SAAOOHM). If that's not Evil and Rude, I don't know what is. >I said uucp addresses are relative. The distinction between @ and ! >notation is purely syntactic and a sensible MTA will be able to convert >user@domain/domain!user (or a!b!c!d to @a,@b:d@c) transparently. Well, of course translation is possible. That doesn't mean, however, that such a translation has no semantic meaning. Sites that assume that "dom.ain!user" is equivalent to "user@dom.ain" and therefore rewrite the latter into the former cause problems, because that equivalence is not universal. It is common, yes, but not universal. Granted, a site that fits all E-Mail into the Procrustean bed of RFC822 may have to assume that "dom.ain!user" means "user@dom.ain" for mail arriving via UUCP. (For example, Ohio State does so.) I have no objection; handling a UUCP->Internet gateway is an exercise in making best guesses, from all I have read. But on the way out from the Internet onto UUCP, I see no excuse for scrambling the syntax of header addresses into "dom.ain!user" on the assumption that the reworked syntax will be "treated the same." It ain't necessarily so. -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
chip@tct.uucp (Chip Salzenberg) (01/01/91)
According to fair@Apple.COM (Erik E. Fair): >In the referenced article, chip@tct.uucp (Chip Salzenberg) writes: >>Why, oh why, must a site registered with the DNS and complying with >>RFC822 in every way suffer the slings and arrows of outrageous header >>rewriting, just because they happen to use UUCP as their mail transport? > >Because they're not using SMTP to do the transport. The UUCP E-mail >protocols have different rules and requirements. I am genuinely puzzled by this fixation on "the UUCP protocol". (EMAIL 101 excerpt, for new readers:) As far as I know, the use of "the UUCP protocol" for E-Mail implies _only_ that mail is transferred using a request of remote execution of the "rmail" command, with the message on standard input and with destination address(es) as command line arguments. Also, the message should begin with a From_ line. These items are often referred to as the "message envelope." Unless I have completely missed the boat, RFC822 does not attempt to describe the envelope (rmail arguments and From_ line -- or, for that matter, SMTP MAIL FROM and RCPT TO strings). So let us leave aside, for now, all consideration of the envelope. Therefore examining only the body of the message, what reason is there to consider a site deficient in implementation of RFC822 based solely on its choice of transport (UUCP rmail)? I see no reason. >But what I'm really wondering is why Salzenberg and the people who >agree with him want all us kind, generous, charitable gateway/forwarder >sites to do all the work for him? This statement genuinely puzzles me. I'm trying to point out that, on balance, header rewriting for mail exchanged by RFC822-compliant sites that happen to use UUCP as a transport is counterproductive, i.e. it causes unnecessary work. I am attempting explain that gateways don't have to turn all those perfectly good domain addresses into bang paths in most cases. I don't understand why such an effort should be considered an attempt at freeloading. >If you wanna be smart, take RFC976 to its logical conclusion, and >convert the dom.ain!user stuff back to user@dom.ain at your site, for >your mailers, and enjoy the fruits of that labor. Well, as I mentioned in an article that you may not have read, I've done exactly that for Elm 2.4dev. But I'm concerned with other sites besides my own. And I have a strong aversion to unnecessary header rewriting in the mail transport. Considering my long effort to save everyone work, and the results, the phrase "tilting at windmills" comes unbidden to mind. <sigh> The way things are going, I may have to hack Smail to put in, for local mail only, some form of address rewriting rules. <double sigh> -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
chip@tct.uucp (Chip Salzenberg) (01/02/91)
According to les@chinet.chi.il.us (Leslie Mikesell): >In article <277A64CD.4C4B@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >>I still object to the rewriting of RFC822 addresses into bang paths. > >How would you handle the RFC822-legal path!user@domain syntax when >handing it to a uux-ed rmail? For the envelope (rmail argument), make it domain!path!user. For the header, *don't change it*. Remember the basic argument: the From: line is an RFC822 animal. Software that parses From: must therefore do so by the rules of RFC822, or by definition it's broken. >>In the address "bang!path!dom.ain!user", the _added_ information >>("bang!path") is the problem, because it is very often an incomplete, >>pessimal or unreliable route. > >Philosophically, I don't like any form of rerouting other than to the >specified "next-hop" host, but realistically it is probably better >to re-route to the right-most FQDN. That should only fail under >a couple of circumstances: (1) the user really wanted the specified >routing for testing or avoiding a known problem with the usual routing. Agreement 100% here, except that I'm slightly more willing to be guided by my philosophical view and by my desire to avoid problems under the given circumstance (1). I've therefore avoided the use of Rabid Rerouting in our mail transport. The only form of Rabid Rerouting performed at TCT is done in our mail user agent (Elm) and only at explicit user request (the header edit screen has a "domainize" command). I thus avoid the common fallacy that machine X knows better than person Y, which is always false for appropriate values of Y. (The value of X doesn't matter.) My point in requesting the cessation of u@d.m -> d.m!u rewriting is that even my own mild form of Rabid Rerouting wouldn't be needed if only RFC822 headers could get to my site without being mangled. -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker
tneff@bfmny0.BFM.COM (Tom Neff) (01/02/91)
What I don't like about the rewriting rule where sitea!siteb!sitec!dom.ain!user becomes simply user@dom.ain is the assumption that, on the other side of all those site[abc] nodes, "dom.ain" really means what we think it means! Maybe "sitec" is a gateway to SiberiaNet and 'ti.com' really means Trans-Irkutsk Commune or something! In this sense RFC976 and rabid rerouting could make strange bedfellows. Does a dotted sitename automatically have to conform to the One True DNS or else forfeit legal mention in a UUCP path?
karl_kleinpaste@cis.ohio-state.edu (01/02/91)
chip@tct.uucp writes:
Granted, a site that fits all E-Mail into the Procrustean bed of
RFC822 may have to assume that "dom.ain!user" means "user@dom.ain" for
mail arriving via UUCP. (For example, Ohio State does so.)
Any site running smail 2.5 assumes that dom.ain!user == user@dom.ain.
les@chinet.chi.il.us (Leslie Mikesell) (01/03/91)
In article <2781581A.6663@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >According to les@chinet.chi.il.us (Leslie Mikesell): >>How would you handle the RFC822-legal path!user@domain syntax when >>handing it to a uux-ed rmail? >For the envelope (rmail argument), make it domain!path!user. For the >header, *don't change it*. Remember the basic argument: the From: >line is an RFC822 animal. Software that parses From: must therefore >do so by the rules of RFC822, or by definition it's broken. Well, that may be your basic argument, but there are other views. My personal view is that whatever starts out in the From: line should stay there, with the exception of possibly adding the domain name (if you happen to have one) on messages leaving your domain. However this is already violated by necessity when an internet gateway forwards a message received without a FQDN. Hardly anyone would knowingly use an address like path!user@domain from a uucp site, but they show up in headers all over the place. At&t also has a different view, and you won't find any FQDN's in the headers of messages through attmail, and you must generate group replies by interpreting the From_ line to get the context for the To: and Cc: lines. Too bad that whoever first used the "From:" line didn't patent it (just joking....). >The only form of Rabid Rerouting performed at TCT is done in our mail >user agent (Elm) and only at explicit user request (the header edit >screen has a "domainize" command). I thus avoid the common fallacy >that machine X knows better than person Y, which is always false for >appropriate values of Y. (The value of X doesn't matter.) Of course the real problem is the fact that this is false. The machines should get it right. However, the software designers should have anticipated the problem and allowed an alternative syntax for routes that should or shouldn't be optimized - too late now, I suppose. >My point in requesting the cessation of u@d.m -> d.m!u rewriting is >that even my own mild form of Rabid Rerouting wouldn't be needed if >only RFC822 headers could get to my site without being mangled. And my point in arguing about it is not to favor the rewriting but to point out that the real problem is the later sites who prepend their uucp names and that this is equally likely to happen to RFC822-legal path!user@domain headers with worse results. It is the sites that prepend their uucp names to the headers that cause the damage. Les Mikesell les@chinet.chi.il.us
les@chinet.chi.il.us (Leslie Mikesell) (01/03/91)
In article <277FE143.513F@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >>I said uucp addresses are relative. The distinction between @ and ! >>notation is purely syntactic and a sensible MTA will be able to convert >>user@domain/domain!user (or a!b!c!d to @a,@b:d@c) transparently. >Well, of course translation is possible. That doesn't mean, however, >that such a translation has no semantic meaning. If there were any semantic meaning IMHO it should be that in addresses containing a "!", everything to the right of the leftmost "!" should be implicitly quoted (as per the original rmail which just didn't look any farther). Unfortunately, it doesn't necessarily work that way anymore. >But on the way out from the Internet onto UUCP, I see no excuse for >scrambling the syntax of header addresses into "dom.ain!user" on the >assumption that the reworked syntax will be "treated the same." It >ain't necessarily so. The odds are pretty good that the headers were already scrambled as the message went into the SMTP transport if it didn't originate at a site with a FQDN. Les Mikesell les@chinet.chi.il.us
lear@turbo.bio.net (Eliot) (01/03/91)
chip@tct.uucp (Chip Salzenberg) writes: >For the envelope (rmail argument), make it domain!path!user. For the >header, *don't change it*. Remember the basic argument: the From: >line is an RFC822 animal. Software that parses From: must therefore >do so by the rules of RFC822, or by definition it's broken. Actually, I believe one point that has been made abundantly clear in this whole discussion was that just because a header looks and smells like an 822 header, it may not be. -- Eliot Lear [lear@turbo.bio.net]
chip@tct.uucp (Chip Salzenberg) (01/05/91)
According to karl_kleinpaste@cis.ohio-state.edu:
>Any site running smail 2.5 assumes that dom.ain!user == user@dom.ain.
Yup. However, any site running Smail 3.1 or a typical Sendmail
configuration does not make the same assumption. Such sites prepend
"host!" to "dom.ain!user". If these sites considered the two above
addresses to be equivalent, they wouldn't feel the need to modify one
address and not the other.
--
Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip>
"Please don't send me any more of yer scandalous email, Mr. Salzenberg..."
-- Bruce Becker
jf@ap.co.umist.ac.uk (John Forrest) (01/05/91)
In article <75110378@bfmny0.BFM.COM> tneff@bfmny0.BFM.COM (Tom Neff) writes: >What I don't like about the rewriting rule where > > sitea!siteb!sitec!dom.ain!user > >becomes simply > > user@dom.ain > >is the assumption that, on the other side of all those site[abc] nodes, >"dom.ain" really means what we think it means! Maybe "sitec" is a >gateway to SiberiaNet and 'ti.com' really means Trans-Irkutsk Commune >or something! > >In this sense RFC976 and rabid rerouting could make strange bedfellows. > >Does a dotted sitename automatically have to conform to the One True DNS >or else forfeit legal mention in a UUCP path? The messages under this title are getting more and more bizarre. I write from somewhere where domain names are normal and UUCP the exception. Basically, UUCP names rely on flat naming scheme, and either world wide maps or explicit routes. Domain based schemes rely on knowing where to throw stuff for non-local names - the advantage being that if you see something like inria.fr at least you know what country it is in. Given a name like site.uucp it might as well be on the moon. This is where domain addressing scores, and is why everyone should use it. Of course, the new X400 has through another spanner in the works, but everyone should use it. As far as "ti.com" being in the Soviet Union - "com" is taken a commercial outfit (in the USA or with a states parent), and the rest of us use country abbreviations. Now, as far as being a standard this is very much a de facto one - its in an RFC somewhere, but I'm not aware of their validy under international law. However, people do follow it, under the banner "if you don't it won't work". Of course, there are problems where networks get connections, but these just have to be solved - it is surely no worse than UUCP abbiguities. Back to the original point, when should sendmail munge these headers. As someone has already said, it needs to to ensure that the header is meaningful to the destination host. Faced with a domain, it shouldn't do (in my opinion) if it knows the destination host understands the domain addresses - no reason why it necessarily shouldn't, even with UUCP mail being used. However, if it is not sure, it is better to fix the headers. John Forrest Dept of Computation UMIST.
bruce@balilly.UUCP (Bruce Lilly) (01/14/91)
In article <2784B595.F6A@tct.uucp> chip@tct.uucp (Chip Salzenberg) claims: >According to karl_kleinpaste@cis.ohio-state.edu: >>Any site running smail 2.5 assumes that dom.ain!user == user@dom.ain. > >Yup. However, any site running Smail 3.1 or a typical Sendmail >configuration does not make the same assumption. Such sites prepend >"host!" to "dom.ain!user". Chip, what is your definition of a ``typical Sendmail configuration?'' And on what evidence do you base that definition? -- Bruce Lilly blilly!balilly!bruce@sonyd1.Broadcast.Sony.COM
chip@tct.uucp (Chip Salzenberg) (01/18/91)
According to bruce@balilly.UUCP (Bruce Lilly): >In article <2784B595.F6A@tct.uucp> chip@tct.uucp (Chip Salzenberg) claims: >>Any site running Smail 3.1 or a typical Sendmail configuration does not >>make the same assumption. Such sites prepend "host!" to "dom.ain!user". > >Chip, what is your definition of a ``typical Sendmail configuration?'' A Sendmail configuration based primarily on a .cf distributed with Sendmail by the vendor. From what I understand, most sites plug-and-play, changing only those things that break their local usage. >And on what evidence do you base that definition? Personal experience and lots of Usenet articles (hearsay). Is it disputed that the transformation from "dom.ain!user" to "localhost!dom.ain!user" is performed by many, if not most, sites that use Sendmail? -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "If Usenet exists, then what is its mailing address?" -- me "c/o The Daily Planet, Metropolis." -- Jeff Daiell
bruce@balilly.UUCP (Bruce Lilly) (01/20/91)
In article <279618AF.2EBA@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: > >Is it disputed that the transformation from "dom.ain!user" to >"localhost!dom.ain!user" is performed by many, if not most, sites >that use Sendmail? I can't speak for most sites which use sendmail, or even for many, but the 3 hosts which I administer don't do that, and based on recent postings, I don't believe that the sites at cis.ohio-state.edu do either. I obviously haven't surveyed all sendmail sites to determine what rewriting rules are in use, but I have only seen the transformation described from a few sites (e.g. rutgers, which also does things to addresses which defy description (although the term rabid has been applied...)). At my sites, "dom.ain!user" is converted to "user@dom.ain" in the headers, and remains "dom.ain!user" in the envelope (for uucp delivery; "user@dom.ain" for delivery via SMTP, as required by RFC's). IMHO that's the only reasonable thing to do*. As for sites where the transformation you describe is made, that's a problem with the *administrator(s)* at those sites, not with sendmail--other software can also be configured to do the same, which I believe is what old versions of rmail did. If you're having problems with some site(s), why not send mail to the postmaster(s) asking that he/they revise their software (which might or might not be sendmail)? *) For feeding mail to downstream uucp sites where rmail understands DNS form and will make any necessary transformations to accomodate the next site downstream, sending the envelope address as "user@dom.ain" would also be reasonable. Lacking specific information about what a downstream site's rmail will accept, and/or what transformations will be performed on envelope addresses, the bangist form has the best chance of success. -- Bruce Lilly blilly!balilly!bruce@sonyd1.Broadcast.Sony.COM
chip@tct.uucp (Chip Salzenberg) (01/24/91)
According to bruce@balilly.UUCP (Bruce Lilly): >In article <279618AF.2EBA@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >>Is it disputed that the transformation from "dom.ain!user" to >>"localhost!dom.ain!user" is performed by many, if not most, sites >>that use Sendmail? > >... I have only seen the transformation described from a few sites >(e.g. rutgers ...) You can add samsung to that list. All mail I've ever gotten via <samsung!romed!tct> has been munged at samsung. And don't forget Apple.COM and USF.EDU (University of South Florida). >If you're having problems with some site(s), why not send mail to the >postmaster(s) asking that he/they revise their software (which might or >might not be sendmail)? Unfortunately, <postmaster@samsung.com> hasn't answered my mail; and I can never tell who <postmaster@usf.edu> is this week. I don't consider Sendmail evil. I do consider its author to be at least somewhat short-sighted in his making header munging so easy. The header rewriting rules in sendmail.cf are the closest thing I've seen to an E-Mail "attractive nuisance." -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "If Usenet exists, then what is its mailing address?" -- me "c/o The Daily Planet, Metropolis." -- Jeff Daiell