Sync Point Attach Manager
Instead of issuing separate RECEIVE_ALLOCATE verbs for each possible transaction name, a Sync Point implementation may instead register as the Sync Point Attach Manager for an SNA server. It does so by issuing a RECEIVE_ALLOCATE verb specifying a TP name consisting of all 0x00s.
When a Sync Point Attach Manager is registered, the following changes are effected in SNA Server's incoming Attach support:
-
When an Attach message arrives for any TP name on a conversation with the syncpoint_rqd field of the VCB set to AP_YES, SNA Server matches it with the application that issued the special RECEIVE_ALLOCATE verb registering itself as the Sync Point Attach Manager.
-
Any Attach message arriving for the Resynchronization TP (0x06F2) will automatically be routed to the Sync Point Attach Manager.
-
If no RECEIVE_ALLOCATE has been issued for the Sync Point Attach Manager, or for the specific TP name, SNA Server will queue the Attach for a configured period of time. If no RECEIVE_ALLOCATE is issued in that time, the Attach will be rejected with a return code of TP_NOT_AVAILABLE_RETRY.
-
If a RECEIVE_ALLOCATE is matched with the Attach message, the verb is returned to the TP with the tp_name field of the VCB set to the TP name contained in the Attach message.
Applications using this feature must adhere to two restrictions:
-
All verbs issued on conversations started in this manner must be issued by the same process, as SNA Server cannot pass tp_ids between processes.
-
Only a single process may register as the Sync Point Attach Manager on any SNA server. If a second process attempts to register, its RECEIVE_ALLOCATE verb will return immediately with the primary return code set to AP_SYNCPOINT_MANAGER_ACTIVE.
Sync Point Attach Manager applications must reside on an SNA server. They may not be distributed across SNA Server clients. This restriction is imposed to ensure that only a single instance of Sync Point Services (SPS) and Conversation-Protected Resource Manager (C-PRM) exists for each LU on the SNA server (which might not be the case if Sync Point Attach Managers were visible from multiple servers in the SNA Server Domain).
The structure of the RECEIVE_ALLOCATE verb control block does not require modification to support this function.