Exit 30 – Reroute Interception

Use Exit 30 to determine if RSCS should reroute a file, command, or message. If the options on the REROUTE command or statement are insufficient for your installation, you can also use Exit 30 to define additional criteria for rerouting the data traffic.

Point of Processing

Process Exit Attribute
Reroute processing Reentrant

Exit 30 is called when RSCS attempts to reroute a file, message, or command.

On return, if your exit routine issues return code 0 or 4, RSCS uses information provided by the REROUTE command and statement to determine if the message or file can be rerouted.

Entry Conditions

The following table shows the parameters passed in R0 and R1 to the first exit routine associated with this exit point. For more information about other register contents, see Standard Entry Conditions.

Register Contents
R0 Not applicable
R1 Address of a parameter list that contains:
Word 1 (+0)
Address of the CVT
Word 2 (+4)
Address of FOR node
Word 3 (+8)
Address of FOR user ID
Word 4 (+12)
Address of 1-byte field that contains a symbolic reference to the data being rerouted; the symbols are defined in the REROUTE macro:
RERCMDS
Command
RERFILES
File
RERMSGS
Message
RERNTRCV
Not-received message
Word 5 (+16)
Address of 8-character field containing the new (TO) node ID
Word 6 (+20)
Address of 8-character field containing the new (TO) user ID

Exit Conditions

On return, Exit 30 sets the standard register contents (see Standard Exit Conditions).

Return Codes

Return Code Results
0 RSCS calls the next exit routine associated with this exit point and continues processing.
4 RSCS does not call any other exit routines associated with this exit point and continues processing.
8 RSCS does not scan the REROUTE table; the exit routine has supplied the reroute destination node and user ID.
12 RSCS does not scan the REROUTE table; the exit routine has supplied the reroute destination node and user ID. RSCS does not issue a message.
16 RSCS does not reroute the message or file; the REROUTE table is not scanned.