PMDF System Manager's Guide
PMDF-REF-6.0


Previous | Contents

42.6.4 Configuring PMDF-XGS on the PMDF system

PMDF-XGS on the PMDF system should be configured using the PMDF-XGS configuration utility, PMDF CONFIGURE XGS (OpenVMS) or pmdf configure xgs (UNIX). This utility will, when it is finished, produce a checklist of final steps you must manually perform in order to complete your configuration. The following subsections document these steps.

42.6.4.1 Adding the channel to the configuration file

The PMDF-XGS configuration utility creates a snads_local channel for you; you do not need to undertake the steps described in this section. This channel and associated rewrite rules appear in the xgs.chans and xgs.rules files in the PMDF table directory.

At least one PMDF-XGS channel is required to connect to the PMDF-XGS OS/2 transport bridge and through it to the SNADS world. The entry for the channel should look something like:

snads_local defragment 733 header_733 maxheaderaddrs 1 addrsperfile 256 \
  charset7 US-ASCII charset8 ISO-8859-1 
SNADS-DAEMON SNADS-name-for-PMDF-system
Here SNADS-name-for-PMDF-system should be the name by which the SNADS world knows the PMDF system.

In order to allow sending from the PMDF side to SNADS users using

username@snadsnode.yourdomain
style addresses, you will want a number of rewrite rules associating the various SNADS nodes and any corresponding SNADS pseudodomain names with this channel, i.e.,
snadsnode1             $U%snadsnode1.yourdomain
snadsnode1.yourdomain  $U%snadsnode1.yourdomain@SNADS-DAEMON 
snadsnode2             $U%snadsnode2.yourdomain
snadsnode2.yourdomain  $U%snadsnode2.yourdomain@SNADS-DAEMON 
... 

The above style of rewrite rules are suitable if you are using pseudodomain names for your SNADS nodes that have the actual SNADS node name as the first (host) part of the pseudodomain name. If you use pseudodomain names that do not use the actual SNADS node name as the first (host) part of the pseudodomain name, then you will want rewrite rules that rewrite a SNADS pseudodomain name to the corresponding actual SNADS node name when going to SNADS, and that rewrite an actual SNADS node name to the corresponding SNADS pseudodomain name when coming from SNADS, i.e.,

snadsnode              $U%snadspseudodomainname
snadspseudodomainname  $U%snadsnode@SNADS-DAEMON$E$F 
snadspseudodomainname  $U%snadsnode@SNADS-DAEMON$Qsnads_local 
snadspseudodomainname  $U%snadspseudodomainname@SNADS-DAEMON 

In order to allow SNADS users to send to the PMDF node and specified other systems on the PMDF side using

username@PMDFnode
style addresses, you will want rewrite rules associating the short form names that are all that SNADS users can enter with the real domain names on the PMDF side, i.e.,
PMDFnode               $U%PMDFdomainname$Msnads_local 
othernodeonPMDFside1   $U%otherdomain1$Msnads_local 
othernodeonPMDFside2   $U%otherdomain2$Msnads_local 
... 
Note that these are source channel specific rewrite rules (the $Msnads_local clause) so that these rewrite rules apply only for messages originating from the snads_local channel.

42.6.4.2 Channel option file

The PMDF-XGS configuration utility creates a minimal snads_local_option file for you in the PMDF table directory.

PMDF-XGS requires a channel-specific option file to specify various configuration options. This file is read by the PMDF-XGS channel programs during initialization. The names of the mandatory options are

Their significance and usage are described below in Section 42.6.4.2.3 . Before setting up the PMDF-XGS option file, you must know the correct values to specify for these mandatory options.

42.6.4.2.1 Location of the option file

PMDF-XGS option files are stored in the PMDF table directory and must have names of the form channelname_option with channelname the name of the PMDF-XGS channel to which this option file applies. Since the channel name for PMDF-XGS is usually snads_local, the filename is usually PMDF_TABLE:snads_local_option. (OpenVMS) or /pmdf/table/snads_local_option (UNIX).

42.6.4.2.2 Format of the option file

Option files consist of several lines. Each line contains the setting for one option. An option setting has the form:
option=value
value may be either a string or an integer, depending on the option's requirements. If the option accepts an integer value, a base may be specified using notation of the form b%v, where b is the base expressed in base 10 and v is the actual value expressed in base b.

Comments are allowed. Any line that begins with an exclamation point is considered to be a comment and is ignored. Blank lines are also ignored in any option file.

42.6.4.2.3 Contents of the option file

The available options are:

ADJACENT_NODE_REN (string)

This specifies the REN of the SNADS node immediately adjacent to the PMDF-XGS tranport bridge.

ADJACENT_NODE_RGN (string)

This specifies the RGN of the SNADS node immediately adjacent to the PMDF-XGS transport bridge. If a value is specified for this option, then a value for the ADJACENT_NODE_REN option must also be specified.

BRIDGE_HOST (string)

This is the TCP/IP hostname of the PMDF-XGS transport bridge.

BRIDGE_PORT (integer)

This is the port on which the PMDF-XGS send process on the PMDF-XGS transport bridge listens for communications from the PMDF system, (typically 9994). This must match the value of the bridgeport parameter on the sendsrv command line in the xgs.cmd file on the PMDF-XGS transport bridge.

BRIDGE_REN (string)

This is the SNADS name (the REN) of the PMDF-XGS transport bridge. This must match the name that the SNADS nodes will be using for the PMDF-XGS transport bridge, as configured in the directory and routing table entries on the SNADS nodes.

SAVE_HEADERS (0 or 1)

The SAVE_HEADERS option is used to control whether or not RFC 822 headers are retained as additional text in SNADS messages produced by PMDF. A value of 0 is the default, and specifies that no headers are to be retained. A value of 1 places the RFC 822 headers as additional text at the bottom of the message.

SUPPRESS_DELIVERY_RECEIPTS (integer)

SUPPRESS_READ_RECEIPTS (integer)

These options control whether delivery and read receipt requests are passed from PMDF to SNADS and from SNADS to PMDF; they take bit encoded integer values. Bit 0 controls the PMDF to SNADS direction; setting this bit causes PMDF to suppress the respective sort of receipt request going to SNADS. Bit 1 controls the SNADS to PMDF direction; setting this bit causes PMDF to suppress the respective sort of receipt request coming from SNADS. The default value for each is 0, meaning that receipt requests are passed in each direction. Note that some SNADS implementations have idiosyncratic interpretations of the COD (Confirmation_Of_Delivery) and RRR (Read_Receipt_Requested) bits, and may, for instance, unconditionally generate a delivery receipt if a read receipt is requested.

TRANSACTIONS_PER_CONVERSATION (integer)

This option may be used to control how many messages the SNADS channel attempts to send to the remote SNADS side during a particular transaction; if there are more than that number of messages to be processed, the SNADS channel will close the conversation and reopen a new conversation. The default value is 32767.

42.6.4.2.4 Example option file

A typical snads_local_option file might appear as shown in Example 42-3 .

Example 42-3 A sample snads_local_option file


ADJACENT_NODE_REN=APPLE 
BRIDGE_HOST=ambrosia.olympus.org 
BRIDGE_PORT=9994 
BRIDGE_REN=AMBROSIA 

42.6.4.3 Defining the service

The PMDF-XGS configuration utility creates a dispatcher_xgs.cnf file for you, suitable for inclusion into your dispatcher.cnf file.

On the machine running PMDF, there are two programs associated with the SNADS Gateway, snads_master and snads_slave, corresponding to the master (PMDF to SNADS) direction of SNADS channels and the slave (SNADS to PMDF) direction of SNADS channels.

snads_master is run automatically by PMDF when it needs to send mail to SNADS.

snads_slave must be configured as a service under the PMDF Service Dispatcher. The PMDF Service Dispatcher will then control starting up a snads_slave server process to handle requests from the PMDF-XGS transport bridge.

The service definition to be added to the dispatcher.cnf file in the PMDF table directory should look, on OpenVMS, something like:

[Service=SNADS] 
Port=dispatcherport
Image=PMDF_EXE:snads_slave.exe 
LogFile=PMDF_LOG:snads_slave.log 
or, on UNIX, something like:
[Service=SNADS] 
Port=dispatcherport
Image=/pmdf/bin/snads_slave 
LogFile=/pmdf/log/snads_slave.log 
where dispatcherport is the TCP/IP port on the PMDF system to which the PMDF-XGS transport bridge will be making its requests, i.e., that the recvsrv pipeline server on the PMDF-XGS transport bridge is configured to use in the xgs.cmd file on the PMDF-XGS transport bridge.

See Chapter 11 for more details on the PMDF Service Dispatcher.

42.6.4.4 An alias for sending to the addressing channel

If you do not already have an addressing channel definition and corresponding rewrite rules in your PMDF configuration file, see Section 27.1.3 .

If you already had an addressing channel, make sure you already have (or add now) a rewrite rule for the short form name addressing, e.g.,

address           $U%youraddressingdomain
where youraddressingdomain is the domain name you are using for your addressing channel.

Once you have an addressing channel, you will probably want to add an alias that directs messages to the addressing channel for the convenience of your SNADS users. For instance, if you wish messages to MAILMAN@PMDFnode to be sent to the addressing channel, then add an entry to your PMDF alias file:

MAILMAN:       MAILMAN@address 
(This assumes that you already have an addressing channel with a rewrite rule for the short form name addressing.)

42.6.4.5 Adding MX records for the SNADS pseudodomains

If you wish other SMTP nodes in your domain or in the outside world to be able to use pseudodomain addresses to send mail to users on the SNADS nodes behind the PMDF-XGS gateway, then you will need to add MX records for the SNADS pseudodomain names into the DNS.


Previous | Next | Contents