Mail delivery question
I have a somewhat dumb question about mail delivery. This has a CP connection because it relates to a remailer enhancement I am working on. When I receive mail from cypherpunks, this is a typical set of headers for an incoming message: From owner-cypherpunks@toad.com Wed Oct 20 23:57:11 1993 Received: from nova.unix.portal.com by jobe.shell.portal.com (4.1/1.34) id AA14713; Wed, 20 Oct 93 23:57:11 PDT Received: by nova.unix.portal.com (5.65b/4.1 1.505) id AA18779; Wed, 20 Oct 93 23:57:09 -0700 Received: by toad.com id AA20355; Wed, 20 Oct 93 23:47:55 PDT Received: by toad.com id AA20115; Wed, 20 Oct 93 23:43:21 PDT Return-Path: <jamie@netcom.com> Received: from netcom.netcom.com ([192.100.81.100]) by toad.com id AA20111; Wed, 20 Oct 93 23:43:19 PDT Received: from netcom3.netcom.com by netcom.netcom.com (5.65/SMI-4.1/Netcom) id AA27104; Wed, 20 Oct 93 23:43:51 -0700 Date: Wed, 20 Oct 93 23:43:51 -0700 Message-Id: <9310210643.AA27104@netcom.netcom.com> X-Mailer: Eudora To: cypherpunks@toad.com From: jamie@netcom.com (Jamie Dinkelacker) Subject: Re: Something Silly, Something Serious Status: RO Now, my question is, when this mail is delivered to the Unix system which I use, how does the local software know to deliver it to hfinney? My name does not seem to appear in the header at all. In particular, the "To:" address is not hfinney@shell.portal.com, as I would have expected, but rather cypherpunks@toad.com. I suppose there is some other information that is passed along with the message when it is delivered to portal.com, information which tells my user name. It would be nice if this information were available to scripts which would process the incoming mail. Could someone explain how this delivery process works? Thanks - Hal Finney hfinney@shell.portal.com
Hal Finney says:
Now, my question is, when this mail is delivered to the Unix system which I use, how does the local software know to deliver it to hfinney? My name does not seem to appear in the header at all. In particular, the "To:" address is not hfinney@shell.portal.com, as I would have expected, but rather cypherpunks@toad.com.
All mail has two sets of "To" addresses. There is the ENVELOPE address, which you do not see, and the HEADER address, which is mere window dressing. I could have the headers say "To: That Lousy Schmuck" and the mail would still arrive. The envelope and header addresses have to be kept seperated for all sorts of very sound reasons that I could explain happily in private mail. The envelope address is passed around using the "RCPT" command in SMTP and is never contained in the mail message itself. Perry
I was pondering the same question awhile ago. After poking around in the system and reading the temporary scratch files that the system created by the mailer, I noticed that the mail was being preceeded by a seperate header packet which was not included in the message. Sending mail to myself caused the system to create two temporary files in the process. One of them was called "SF" and the other was "QF". I don't know what the letters stand for, and this is probably just how CMU does it, other sites may be different. Anyway, in my test mail to myself, the SF file contained: #From |<mg5n+@andrew.cmu.edu>| #To |mg5n+@andrew.cmu.edu| #Auth |26634;andrew.cmu.edu;Matthew J Ghio| and the QF file contained the actual text of the message plus the headers that you see. So the email is actually sent as two seperate packets of data, the headers you see are just there for looks, the actual delivery info is hidden behind-the-scenes. Does anyone else have any description of "standard" methods of handling internet e-mail?
participants (3)
-
hfinney@shell.portal.com -
Matthew J Ghio -
Perry E. Metzger