2.2.5.9 STmToTmProtocol

The STmToTmProtocol structure contains protocol-specific endpoint information for the transaction manager.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

tmprotDescribed

cbTmProtocolData

rgbTmProtocolData (variable)

...

tmprotDescribed (4 bytes): This field specifies the type of transaction manager-to-transaction manager protocol-specific data for this transaction. This MUST be one of the values specified in TM_Protocol enumeration (section 2.2.6.2).<13>

cbTmProtocolData (4 bytes): This field MUST specify the length, in bytes, of the rgbTmProtocolData field.

rgbTmProtocolData (variable): The transaction manager protocol-specific data for this transaction. If the cbTmProtocolData field is 0x00000000, this field MUST NOT be present. Otherwise, the format of this field depends on the value of the tmprotDescribed field, which MUST be one of the following values.

tmprotDescribed name/value

Meaning

TmProtocolMsdtcV1 0x00000002

This field MUST contain an SDtcCmEndpointInfoV1 (section 2.2.5.5) structure that contains data that is used to connect to an OleTx transaction manager. The cbTmProtocolData field MUST be at least 21.

TmProtocolMsdtcV2 0x00000003

This field MUST contain an SDtcCmEndpointInfoV2 (section 2.2.5.6) structure that contains additional data that is used to connect to an OleTx transaction manager. The cbTmProtocolData field MUST be at least 2.

TmProtocolExtended 0x00000004

This field MUST contain an SExtendedEndpointInfo (section 2.2.5.8) structure for an extension protocol. The cbTmProtocolData field MUST be at least 16.