Queuing a request for a session with an SLU
When a session is requested with a particular SLU, that LU might not be available to act as the SLU in the requested session. This might be because the LU is either at its session limit, or is not currently enabled to act as an SLU.
Table 1 shows how an SLU application program can change from the disabled state to the enabled state by using SETLOGON OPTCD=START. Some terminals also have the ability to switch back and forth between enabled and disabled states. For example, for certain IBM® 3274 control units, if a printer or display is powered off, the control unit notifies the SSCP that the terminal is disabled for sessions. If the terminal is then powered on, the control unit notifies the SSCP that the terminal is enabled for sessions. Thus, the SSCP is able to keep track of the session capability of these LUs.
If an application program requests a session with such an LU by using SIMLOGON OPTCD=Q and the LU is available, the session is established at that time. However, if the LU is currently disabled for sessions as an SLU, or if the LU is at its session limit, then SIMLOGON is posted complete, but the session is not established until sometime after the LU becomes available (for example, by powering on).
The LU can change from an enabled to a disabled state (for example, by powering off) just before the BIND reaches the LU. In this case, VTAM® rejects the BIND request. The SNA sense code in the response can be used to determine the appropriate recovery procedure. This sense code is made available in the SSENSEI and SSENSMI fields of the RPL that issued OPNDST OPTCD=ACCEPT.
Sense code X'08450000' indicates that the LU notifies the SSCP when it is again enabled. For this sense code, SIMLOGON OPTCD=Q can be reissued immediately and the SSCP queues the request for the session until the LU becomes available.
Sense code X'080A0000' indicates that the LU does not notify the SSCP when it becomes available for a session. This code is used if either the LU or its SSCP does not support the required notification facility. In this case, the application program should not immediately reissue SIMLOGON OPTCD=Q because another BIND rejection results. Manual intervention is required. For example, when the terminal operator powers on the terminal, the operator can notify the host operator, who in turn can send a message to the program to issue SIMLOGON at that time.
Session outage
notification signals
(Type and reason codes shown in decimal) “ns” means “exit routine not scheduled” Session outage notification reasons |
If LU is PLU | If LU is SLU | |||||
---|---|---|---|---|---|---|---|
SCIP | NSEXIT | LOSTERM | SCIP | NSEXIT | LOSTERM | ||
UNBIND type=01 received by PLU
|
01 | CU | 24, then 16 | ns | ns | ns | |
UNBIND type=01 received by SLU
|
ns | ns | ns | ns | 01 | ns | |
UNBIND type=02 received by SLU
|
ns | ns | ns | ns | 02 | ns | |
UNBIND type=12 received by this LU
|
12 | CU | 12 | ns | 12 | ns | |
UNBIND type=TC received by this LU
for any UNBIND type not listed above, including (but not restricted
to):
|
TC | CU | 24, then 16 | ns | TC | ns | |
CTERM Forced received by PLU (PLU
sends UNBIND type=01 to SLU. No action is taken if PLU is an independent
LU.)
|
ns | ns | 12 | ns | ns | ns | |
CTERM Forced received by PLU (PLU
sends UNBIND type=01 to SLU. No action is taken if PLU is an independent
LU.)
|
ns | ns | 20 | ns | ns | ns | |
CLEANUP received by this LU (UNBIND
type=0C sent to other LU)
|
ns | CU | 24 then 16 or 48 | ns | CU | ns | |
CLEANUP received by this LU (UNBIND
type=01 sent to other LU)
|
ns | CU | 12 | ns | CU | ns | |
Global failure of this LU (UNBIND type=01 sent to other LU) (TPEND exit routine with reason
code 8)
|
ns | ns | ns | ns | ns | ns | |
Failure of this LU for this session
(UNBIND type=14 sent to other LU) |
14 | CU | 24, then 16 | 14 | ns | ns | |
Buffer overflow at this LU (Does not cause session termination) |
ns | ns | 36 | ns | ns | 36 | |
Test Request message received by
PLU (UNBIND type=01 sent to the SLU)
|
ns | ns | 12 | ns | ns | ns | |
CTERM Orderly received by PLU (No action taken if PLU is an independent LU) (Does not cause
session termination)
|
ns | ns | 32 | ns | ns | ns |