home *** CD-ROM | disk | FTP | other *** search
- (******************************************************************************)
- (* ALLFIX sample procedures *)
- (* Copyright (C) 1992,98 Harms Software Engineering, all rights reserved *)
- (* *)
- (* All information in this documentation is *)
- (* subject to change without prior notice *)
- (******************************************************************************)
-
- This file explains the structure of encoded email messages which
- are used to send files and messages via the internet to other
- fidonet technology nodes.
-
- All files (with files we also mean messages such as netmails)
- are split up into sections of at most 16 kb. Each email message
- contains a number of fields that identify the contents. There
- are two types of message contents, files and netmail messages.
- Most of the keywords are the same. Each keyword, also referred
- to as a verb, is followed by a value. The following list of
- keywords are used for both types of emails:
-
- ALLFIX_MSG_ID: The message identifier. The
- format of the identifier is
- explained below.
-
- ALLFIX_MSG_ORIG_ADDRS: The origin fidonet address.
-
- ALLFIX_MSG_DEST_ADDRS: The destination fidonet address.
-
- ALLFIX_MSG_FROM: The name of the person who
- wrote the message.
-
- ALLFIX_MSG_TO: The name of the person to whom
- the messageis addressed.
-
- ALLFIX_MSG_SUBJ: The subject of the netmail.
-
- ALLFIX_MSG_DATE: The date of the message in the
- same format as in a .MSG file
- header.
-
- ALLFIX_MSG_FLAGS: The message flags. The "Direct"
- flag is coded as bit number 10.
-
-
- The following list of keywords are used for encoding netmail
- messages:
-
- ALLFIX_MSG_PART_CRC: The 32 bit Crc of this message
- part. The Crc is calculated on
- the uncoded message part.
- Therefore, when checking the
- Crc, first decode the message
- part and then calculate the Crc.
-
- ALLFIX_MSG_PART_BEGIN: The encoded message body follows
- on the next line after this
- keyword. The body is encoded
- using the coding technique
- explained below.
-
- ALLFIX_MSG_PART_END This keyword signals the end of
- the message body part. This is
- one of the two keywords that is
- not followed by any extra
- values.
-
- The following list of keywords are used for encoding files:
-
- ALLFIX_FILE_NAME: The name of the file being sent.
-
- ALLFIX_FILE_SIZE: The size of the file being sent.
- This is the size of the entire
- file and NOT the current part.
-
- ALLFIX_FILE_TIME: The date and time of the file
- being sent. When recreating the
- file, the date and time are set
- to this value. The file time is
- stored in DOS format.
-
- ALLFIX_FILE_PART_CRC: The 32 bit Crc of this message
- part. The Crc is calculated on
- the uncoded message part.
- Therefore, when checking the
- Crc, first decode the message
- part and then calculate the Crc.
- The CRC is stored in hexadecimal
- format.
-
- ALLFIX_FILE_PART_BEGIN: This keyword signals that a file
- part will begin on the line
- following this keyword. Directly
- following this keyword is the
- part number followed by the
- total number of parts, seperated
- from the part number with a
- front-slash. For example 1/10.
-
- ALLFIX_FILE_PART_END This keyword signals that the
- end of a file part has been
- reached. This is one of the two
- keywords that is not followed by
- any extra values.
-
-
- The ALLFIX_MSG_ID's consist of two parts. The first part is
- the dos system date in hexadecimal format. The second part is
- a followup number. Each time an email is written, the followup
- number is incremented. An example ALLFIX_MSG_ID is:
-
- 22F93403-00000746
-
-
- The message ID's are unique. The first part is unique for "file"
- that is being sent. In other words, if a large file is being
- sent, which is split up into 10 parts, each part will have the
- "main" ID number. Only the followup number will be different.
-
- ALLFIX sends all messages and files using email messages. The
- netmail messages are encoded into one email and the files may be
- split up into several parts. When all these parts have arrived,
- they are simply appended to each other to create the original
- file. It is easy to know if all parts have been received because
- each email contains a part number and also the total number of
- parts.
-
- When an email is correctly received, ALLFIX will send an
- acknowlegement back to the sender. The acknowledgement message
- contains one keyword, namely:
-
- ALLFIX_ACK: This keyword contains the
- ALLFIX_MSG_ID of the email being
- acknowledged.
-
- When an email is incorrectly received (i.e. the Crc is
- incorrect), an error is sent back to the sender. The error
- message contains one keyword, namely:
-
- ALLFIX_ERR: This keyword contains the
- ALLFIX_MSG_ID of the email that
- was incorrectly received.
-
-
- The encoding technique used by ALLFIX is a variation of the
- commonly known UUENCODE technique. The only real diference is
- that the length of the lines have been extended to 80
- characters. The reason that this was done was to prevent other
- other software from recognizing the file attaches. If a normal
- UUENCODE technique was used, the files may be detached from the
- actual email, hence interfering with ALLFIX.
-
- For sample code for encoding and decoding, please refer to the
- UUENCODE.PAS source file.
-
-