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-systemHere
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.yourdomainstyle 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@PMDFnodestyle 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
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 thebridgeport
parameter on thesendsrv
command line in thexgs.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.logor, on UNIX, something like:
[Service=SNADS] Port=dispatcherport Image=/pmdf/bin/snads_slave LogFile=/pmdf/log/snads_slave.logwhere
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%youraddressingdomainwhere
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.