This chapter provides additional information about Silicon Graphics implementation of SNA Logical Unit Type 6.2 (LU 6.2) architecture. Also contained in this chapter are the base set of functions and the option sets of LU 6.2, as defined in the IBM Systems Network Architecture Transaction Programmer's Reference Manual for LU Type 6.2 and Systems Network Architecture Format and Protocol Reference Manual: Architecture Logic for LU Type 6.2.
Each verb is implemented as a C-language library function. After the execution of any verb function, return information is placed in the global variables snamaj and snamin. This equates to the architected RETURN_CODE. The conversation state is set in the global variable snastat. While the architecture does not mandate that the state be explicitly returned to the transaction program, doing so enables the programmer to write the transaction program in a convenient, state-driven fashion.
The IRIS implementation of LU 6.2 from Silicon Graphics maps on an almost one-for-one basis to the IBM architected verbs and their specified parameters. Exceptions are described in this section.
The basic conversation verbs are described below.
GET_TYPE (gtype)
A return value of 0 indicates that the conversation type is basic; 1 indicates that the conversation type is mapped. A return value of -1 indicates an error. There is no variable corresponding to type to receive the value.
SEND_ERROR (snderr)
An additional value for type, SE_ALC (2), indicates an allocation error. If the type returned is SE_ALC, the sense field (also not architected) contains the allocation-error sense data. These parameters are reserved for the Transaction Program Initiator (TPI).
WAIT (waitcv)
Passes an additional parameter, count, that indicates the number of conversation IDs on the following list. All posted conversation IDs are checked when count is 0.
Two additional verbs are included in LU 6.2 to control the initial connection between the transaction program and the IRIS SNA SERVER: attach and rattach. attach establishes the connection between the local transaction program and the IRIS SNA SERVER. rattach establishes the connection between a remotely evoked transaction program and the conversation that evoked it.
RESET_SESSION_LIMITS (rstsl)
MODE_NAME is handled as two parameters: the first, all, uses 0 to indicate that a single mode is to be reset, or 1 to indicate that all modes are to be reset. The second, mode, contains the name of the mode to be reset if all is 0. It is ignored if all is 1.
PROCESS_SESSION_LIMIT (procsl)
LU_NAME and MODE_NAME are not returned. They are handled internally by s2_cnos.
DEACTIVATE_SESSION (dctses)
Requires two parameters not specified in the architecture: remote (the local name of the remote LU) and mode (the name of the mode for the session).
The following basic conversation verbs are implemented:
These option sets are supported:
Conversations between programs located at the same LU
Delayed allocation of a session
Immediate allocation of a session
Session-level LU-LU verification
User ID verification
Profile verification and authorization
Profile pass-through
Program-supplied profile
PIP data
Logging of data in a system log
Flush the LU's send buffer
Prepare-to-Receive
Long locks
Post-on-Receipt with wait
Get Attributes
Get Conversation Type
Mapped conversation LU services component
CHANGE_SESSION_LIMIT verb
MIN_CONWINNERS_TARGET parameter
RESPONSIBLE(TARGET) parameter
DRAIN_TARGET(NO) parameter
FORCE parameter
ACTIVATE_SESSION verb
DEACTIVATE_SESSION verb
LU parameter verbs
LU-LU session limit
Locally known LU names
Uninterpreted LU names
Single-session reinitiation
Maximum RU size bounds
Contention-winner automatic activation limit