3.3.3.1 Role Initialization

When the TIP interoperability provider role is initialized, it MUST perform the following actions:

  • The value of the TIP Interoperability Provider Name field MUST be set to a value that is obtained from an implementation-specific source. This field MUST be used when initializing the underlying implementation of the transports protocol, as specified in [MS-CMPO] section 3.2.3.1.

  • Create an empty table to store TIP URL and associated transaction object entries, and assign the newly created table to the TIP Transaction Table field.

  • By using an implementation-specific approach, establish itself as a protocol extension, as specified in [MS-DTCO] section 3.2.1.5, with an OleTx transaction manager. As a result, it MUST initialize the following field:

    • Identifier MUST be set to GUID NULL.

    • Whereabouts MUST be set to NULL.

    • Whereabouts Size MUST be set to zero.

  • Examine the Allow Network Access flag on the Core Transaction Manager Facet, as specified in [MS-DTCO] section 3.2.1, and perform the following actions:

    • If the Allow Network Access flag is set to FALSE:

      • The TIP interoperability provider MUST reject the incoming request for a connection, as specified in [MS-CMP] section 3.1.5.5 (MsgTag 0x00000005), with the rejection Reason set to 0x80070005, from remote machines for all its supported connection types.