Guardian Programmer's Guide

Table Of Contents
Writing a Command-Interpreter Monitor ($CMON)
Guardian Programmer’s Guide 421922-014
23 - 4
Controlling the Configuration of a TACL Process
Controlling the Configuration of a TACL
Process
If a user is attempting to log on to an interactive TACL process from the logged-off
state, or if a noninteractive TACL process is starting, the TACL process sends a
Config^msg message to the $CMON process so it can verify or change the default
parameters. If the REQUESTCMONUSERCONFIG configuration parameter is set to a
nonzero value, the TACL process also sends a Config^msg message to the $CMON
process after a logon is performed so it can obtain the user configuration and change
the parameters accordingly; it does this after a logon from either the logged-off state or
the logged-on state and after use of the #CHANGEUSER built-in function.
After processing a Config^msg message, the $CMON process replies with either a
Config^text^reply message to keep the default configuration values as they are, or a
Config^reply message, causing the TACL process to change the configuration
parameters.
The Config^msg message has the message number -60 in its first word. The format of
the message is given below:
Format of command-interpreter message -60 (Config^msg message):
STRUCT CONFIG^MSG;
BEGIN
INT MSGCODE; ![0] value -60
INT USERID; ![1] current user ID of TACL
! process.
! Value is 0 if logged off
! or logged on as
! NULL.NULL (0,0)
INT CIPRI; ![2] current priority of TACL
! process
INT CIINFILE[0:11]; ![3] IN file of TACL process
INT CIOUTFILE[0:11]; ![15] OUT file of TACL process
INT CONFIG_REQUEST_TYPE; ![27] configuration request type
! 0 = send default
! configuration
! 1 = send user
configuration
END;
Note. If the $CMON process intends to access the CONFIG_REQUEST_TYPE field of the
Config^msg message, it should first check the length of the message (bytes read). Some
processes, including earlier TACL versions, might not include this field with the message. In
general, $CMON should be flexible about allowing callers to add new fields at the end of
existing messages.