How the EMWAC Internet Mail Services work

SMTP Receiver

The SMTP Receiver listens for incoming mail messages, on TCP/IP port 25. It places the messages in the "incoming" mail directory.

A message is stored as two separate files, named uniquename.MSG and uniquename.RCP. The uniquename is a unique identifier by which the message is known while it is in the system.

The .MSG file contains the message itself. The file is byte-stuffed (ie a redundant dot is inserted at the beginning of lines which start with a dot), and the end of the file is indicated by a single dot on a line by itself.

The .RCP file contains the names of the recipients of the message, and the originator of the message (to whom non-delivery reports will be sent).

SMTP Delivery Agent

The SMTP Delivery Agent deals with messages which have been received by the SMTP Receiver.

It removes messages from the "incoming" directory, and stores them in a "holding" directory. For each distinct mail domain in the list of message recipients, SMTPDS creates a subdirectory (within the "domains" directory), where it places information about the recipients in that domain.

For local deliveries, SMTPDS temporarily stores recipient information in a special $local$ subdirectory within the "domains" directory. It then copies messages into each local recipients' "incoming mail" directory.

For mail which is destined elsewhere, SMTPDS will issue a request to the DNS for an MX record for the corresponding domain. (It determines the DNS server address from the Windows NT registry - therefore you must configure Windows NT with a DNS address.) It uses the MX record to determine the IP address(es) to which it should attempt to send messages for that domain. SMTPDS will attempt to establish contact with that domain and submit the message(s). If unsuccessful, it will wait a while before attempting to contact the domain again. It will persistantly try to contact the domain for several days.

The message files in the "holding" directory are of the form uniquename.MSG. These files are byte-stuffed (ie a redundant dot is inserted at the beginning of lines which start with a dot), and the end of the file is indicated by a single dot on a line by itself.

The files in the "domains" directory are of the form uniquename.RCP. These files contain the names of the recipients of the message, and the originator of the message (to whom non-delivery reports will be sent).

The "domains" directory also contains files which record routing information, and details of how many times the Delivery Agent has attempted to contact each domain.

You should not attempt to edit or change any of the above files.

POP3 Server

The POP3 Server listens on TCP/IP port 110 for connections from POP3 mail clients. When a mail client attaches, the server verifies that the password supplied by the client is correct (ie there is a corresponding user registered on the Windows NT machine). It will then transfer messages from a local user's "incoming mail" directory to the POP3 client mail program.