2.1.3.1.8 IMCEA Encapsulation
When no SMTP proxy address is available for an address element, servers SHOULD<18> encapsulate any other address type to produce the required SMTP address, by using the IMCEA encapsulation mechanism. The domain part of the encapsulated SMTP address SHOULD be the MIME writer's local domain or the domain of another mail server that can de-encapsulate, and deliver to, the encapsulated address.
The IMCEA encapsulation mechanism is defined for the address types listed in the following table.
Address type |
Value of PidTagAddressType or related property |
---|---|
Address Book |
EX |
Facsimile |
FAX |
X.400 |
X400 |
The following Augmented Backus-Naur Form (ABNF) notation specifies the format of an encapsulated address:
-
Encapsulated-address = "IMCEA" address-type "-" encoded-address "@" domain address-type = *VCHAR domain = dot-atom-text; see [RFC2822] section 3.2.4 for the definition. encoded-address = * (Escaped-chars/ Normal-chars) Escaped-chars = (ESCSLASH / ESCCHARS) ; Encoded form for "/" (%x2F) is "_" ESCSLASH = %x5F ; All OCTETS not ALPHA, DIGIT, or in "-=/" ; These are a "+" and the two hex digits of the OCTET's value. ESCCHARS = "+" 2(HEXDIG) ; All other characters Normal-chars= (ALPHA / DIGIT / HYPHEN / EQUALSIGN) HYPHEN = %x2D EQUALSIGN = %x3D
Encapsulated addresses MUST NOT include line breaks and therefore can require longer line lengths than those recommended by [RFC2822].
A MIME writer MAY<19> encode only the address part and use the address-type part as is. On decoding, the MIME writer MAY scan for the first hyphen ("-") after "IMCE" and use the prefix as is without parsing for any escaped characters.
A MIME writer MAY<20> build the entire string including the address-type part and the encapsulated address, and then encode the whole string, escaping any non-alphanumeric characters contained in the address-type part. On decoding, the MIME writer unescapes the entire string and scans the first nine characters for a hyphen ("-"). If a hyphen is not found, the address is not de-encapsulated. The address-type part is limited to eight characters. In this circumstance, only ASCII alphanumeric characters are allowed in the address-type part.