PMDF System Manager's Guide


Previous Contents Index

18.1.2 Conversion of VMS From: Addresses to PMDF Format

If the From: address is an address of the form IN%"address" , the IN%" " wrapper is removed and the same translations described in the previous section, Section 18.1.1, are performed. PMDF handles this case by effectively reversing any transformations applied to the address to make it palatable to VMS MAIL. The result should be the original address PMDF started out with. Note that this special case does arise in practice when incoming PMDF messages are forwarded through VMS MAIL back out to PMDF.

If the address is not something PMDF recognizes as one of its own, the first step in the rewriting process is to attempt to use any special mapping that has been supplied. PMDF checks the mapping file to see if a mapping table named VMSMAIL-TO-PMDF exists. If this table exists it is applied to each address. Specifically, a probe string of the form


channelname|address
is constructed. Here channelname is the name of the PMDF channel associated with the incoming mail. This will be d if network mail is being received and a d channel exists; otherwise it will be "l". address is simply the address being converted.

If no entry in the mapping table matches the probe string, the conversion process continues as if no mapping table was given; the address is not changed. If an entry does match, the result of the application of the mapping replaces the original addresses. This resultant address can either be a VMS MAIL address or a RFC 822 address. The mapping template should specify a $< metacharacter if it produces a VMS MAIL address and $> metacharacter if it produces a RFC 822 address. No further conversion will be done if $> is specified.

The following example shows a very simple mapping that converts PSIMail addresses into (possibly legal) domain addresses:


VMSMAIL-TO-PMDF 
 
  *|PSI$%1::*         $1@one.psi.company.com$> 
  *|PSI$%2::*         $1@two.psi.company.com$> 
  *|PSI$%*::*         $2@$1.psi.company.com$> 

Now, if the conversion process has resulted in a VMS MAIL address at this point (which includes addresses generated by DECnet MAIL, PSIMail, or various other mail systems), it is converted into RFC 822 quoted string format and the local host name is appended to the address. DECnet addresses are handled in a special manner --- double colons are converted into percent signs and the halves of the address are swapped. The special case of a foreign protocol address that does not require RFC 822 quoting is handled by doubling the percent signs in the address (effectively quoting them). For example:


IN%"dan@sc.cs.cmu.edu"  maps to  dan@sc.cs.cmu.edu 
IN%"'test 1'@tester"    maps to  "test 1"@tester 
NED                     maps to  ned@local-host
A::B::C::D              maps to  d%c%b%a@local-host
PSI%1002::TEST          maps to  "PSI%1002::TEST"@local-host
DSIN%48374334343        maps to  DSIN%%48374334343@local-host


Previous Next Contents Index