Routing Table Comparison Entry Statements

The routing table entries to be searched must be in the following fixed format. The contents of the fields described below may appear anywhere in the defined columns for that field (unaligned) unless the description for that field explicitly states that alignment is required.

Note: The words in parentheses correspond to the vertically aligned words in the comment records in Figure 1 through Figure 3, and also in the IBM sample routing table file.
 
FIELD
 
EXAMPLE
FIELD
COLUMNS
LENGTH
OF FIELD
COMPARISON TEXT (TEXT) /FEEDBACK / 1-25 25
STARTING COLUMN (SCOL) 1 27-29 3
ENDING COLUMN (ECOL) 9 31-33 3
MESSAGE CLASS (TYPE) 1 35-36 2
USERID (USER) USER21 38-45 8
NODEID (NODE) NODE2 47-54 8
ACTION ROUTINE NAME (ACTN) DMSPOR 56-63 8
PARAMETER TO ACTION ROUTINE (PARM) TOFB 65-72 8
COMPARISON TEXT
is a particular character string that the programmable operator facility searches for in the incoming message. If this field is left blank, any text compared with this field is considered a match. Multiple texts may be specified, with the capability to skip over intervening blank or nonblank characters.
STARTING COLUMN
is the column in the incoming message where the programmable operator facility starts looking for the character string mentioned in the COMPARISON TEXT field. If this field is left blank, the programmable operator facility starts scanning at the beginning of the message.
ENDING COLUMN
is the column in the incoming message where the programmable operator facility stops looking for the character string(s) mentioned in the COMPARISON TEXT field. If this field is left blank, the programmable operator facility continues scanning until the end of the message.
MESSAGE CLASS
identifies the origin of the incoming message according to the message type. Classes 1-9 are IUCV message types; class 30 is strictly a programmable operator facility message type for NCCF or NetView messages. For more details on IUCV message types, see the Message System Service section in the z/VM: CP Programming Services. If this field is left blank, any value compared with this field is considered a match.

The message types available to the programmable operator facility are:

Class
Message Types
1
Message sent using CP MESSAGE and CP MSGNOH.
2
Message sent using CP WARNING.
3
Asynchronous CP messages, CP responses to a CP command executed by the programmable operator facility virtual machine, and any other console I/O initiated by CP.
4
Message sent using CP SMSG command.
5
Any data directed to the virtual console by the virtual machine (WRTERM, LINEDIT, and others).
6
Error messages from CP (EMSG).
7
Information messages from CP (IMSG).
8
Single Console Image Facility (SCIF) message from CP.
30
Message coming from the Network Communication Control Facility or NetView (*NCCF).
Note: CP responses that are trapped in a buffer using the extended DIAGNOSE code X'08' do not become type-3 messages. For example, CP responses from the programmable operator CMD command are not type-3 messages, and therefore are not logged when LOGGING is set to ON.
USERID
is the character string compared to the user ID of the user that sent the incoming message to the programmable operator facility. It determines the authority of the user to cause an action to be performed. The identifiers for all NCCF or NetView operators, who may use the programmable operator, must be unique. If this field is left blank, all user IDs compared with this field are assumed to match. If this field is not left blank, the user ID must be left-justified in the field or you will receive an error message.
NODEID
is the character string compared to the node ID of the user that sent the incoming message to the programmable operator facility. Again, it determines the authority of the user to cause an action to be performed. To authorize an NCCF or NetView operator, *NCCF or blanks must be in the node ID field of the routing table. Also, the identifiers for all NCCF or NetView operators, who may use the programmable operator, must be unique. If this field is left blank, all node IDs compared with this field are assumed to match. If this field is not left blank, the node ID must be left-justified in the field or you will receive an error message.
ACTION ROUTINE NAME
is the name of the LOADLIB member (a Basic Assembler Language routine) that the programmable operator facility is to NUCXLOAD when the LOADTBL function is performed, or the name of an exec, and subsequently, the routine that the programmable operator is to call when a match occurs on the entry in which the name is specified. If this field is left blank, no action is performed. If this field is not left blank, the action routine name must be left-justified in the field or you will receive an error message.
PARAMETER TO ACTION ROUTINE
is a character string of up to eight bytes passed as a parameter to the action routine by way of the programmable operator PARMLIST for a Basic Assembler Language routine or by way of a program stack for an exec. Often, this is used to specify a particular subroutine in the action routine. If this field is left blank, no parameter is passed. If this field is not left blank, the action routine parameter must be left-justified in the field or you will receive an error message.

Column 73 and beyond are reserved for future use.

Figure 1 illustrates an example of a partial routing table.
Figure 1. Partial Routing Table
* THIS IS THE DEFINITION OF THE PROP CONFIGURATION.
* LOGICAL OPERATOR IS NICKNAME "LOP".  SEE "OPERATOR NAMES" FILE.
* LOGICAL OPERATOR (NICKNAME "LOP") IS "OPERATOR" AT NODEID "NODE1".
LGLOPR   LOP
* THE TEXT SEPARATOR CHARACTERS.
TEXTSYM / $ ¬
* ESTABLISH 1,024 AS THE *MSG VALUE.
MSGLIMIT 1024
* WHICH NODES TO CHECK, AND AT WHAT INTERVAL.
HOSTCHK  5  1
* THE ROUTING ENTRIES START
ROUTE
*------------------------ --- --- -- -------- -------- -------- --------
*T                        S   E   T  U        N        A        P
*E                        C   C   Y  S        O        C        A
*X                        O   O   P  E        D        T        R
*T                        L   L   E  R        E        N        M
*------------------------ --- --- -- -------- -------- -------- --------
* SEND PROP FEEDBACK COMMAND TO FEEDBACK ACTION ROUTINE
*------------------------ --- --- -- -------- -------- -------- --------
/FEEDBACK /                 1   9  1 USER21   NODE2    DMSPOR   TOFB
*------------------------ --- --- -- -------- -------- -------- --------
* AUTHORIZE NCCF OR NETVIEW OPERATORS TO CHANGE LGLOPR
* WITH THE LGLOPR COMMAND
*------------------------ --- --- -- -------- -------- -------- --------
/LGLOPR /                   1   7 30                   DMSPOR   LGLOPR
*------------------------ --- --- -- -------- -------- -------- --------
* FILTER OUT LOGON AND LOGOFF MESSAGES SO OPERATOR NEED NOT SEE THEM
* BUT LET "FORCED" LOGOFF MESSAGES THROUGH
*------------------------ --- --- -- -------- -------- -------- --------
/LOGON                     21  26  3
/LOGOFF$¬FORCED            21  80  3
*------------------------ --- --- -- -------- -------- -------- --------
* FILTER OUT COMMANDS THAT WE DO NOT WANT ISSUED.
*------------------------ --- --- -- -------- -------- -------- --------
/CMD /SYSTEM                                           WARNING
/CMD /SET /EC                                          WARNING
*------------------------ --- --- -- -------- -------- -------- --------
* ALLOW ONLY OPERATOR ON HOST TO ISSUE SHUTDOWN.
*------------------------ --- --- -- -------- -------- -------- --------
/CMD /SHUTDOWN                       OPERATOR NODE1    DMSPOR   TOVM
*------------------------ --- --- -- -------- -------- -------- --------
* ROUTE ALL MESSAGES ABOUT DEVICE 00E TO THE SPOOL OPERATOR.
*------------------------ --- --- -- -------- -------- -------- --------
$ 00E                              3                   DMSPOS   SPOOLOP
WARNING
represents a user action routine which may send a warning message to the user issuing that command.
SPOOLOP
represents a nickname or user ID of the spool operator.