3.2.4.16 Local LU Initiated Recovery Sending XLN Response
This event MUST be signaled by the higher-layer business logic with the following arguments:
A connection object of type CONNTYPE_TXUSER_DTCLURECOVERYINITIATEDBYDTC
Remote Log Status value, which MUST be set to one of the following values:
Warm
Cold
If the Local LU Initiated Recovery Sending XLN Response event is signaled, the LU 6.2 implementation MUST perform the following actions:
If the provided connection state is not set to either Processing Cold XLN Request or Processing Warm XLN Request:
Return a failure result to the higher-layer business logic.
Otherwise:
Send a TXUSER_DTCLURECOVERYINITIATEDBYDTC_MTAG_THEIR_XLN_RESPONSE message using the provided connection:
The Xln field MUST be set to one of the following elements of the DTCLUXLN enumeration:
DTCLUXLN_WARM if the provided Remote Log Status value is Warm
DTCLUXLN_COLD if the provided Remote Log Status value is Cold
The dwProtocol field MUST be set to 0.
The cbLength field of the DTCLU_VARLEN_BYTEARRAY structure (contained in the RemoteLogName field) MUST be set to the number of bytes in the provided remote log name.
The first cbLength bytes of the rgbBlob field of the DTCLU_VARLEN_BYTEARRAY structure (contained in the RemoteLogName field) MUST be set to the provided remote log name.
Set the connection state to Awaiting Response To XLN.