### ContactProvider Procedure

ContactProvider is the first routine called by DTS. The routine is called to verify that the TP process is running and to obtain a control message that DTS uses for subsequent communications with the TP process and for synchronization after it receives the timestamps. The parameters passed in the ContactProvider procedure call consist of the following elements:

· Binding Handle

An input parameter that establishes the relationship between DTS and the TP process. A binding handle enables the client (DTS) to recognize and find a server (the TP process) that offers the same interface.

· Control Message

An output parameter that contains information used by DTS for subsequent processing. The control message consists of the following elements:

Tpstatus
One of the following values:

- K_TPI_SUCCESS

- K_TPI_FAILURE

nextPoll
A time value that tells DTS when to contact the TP process again. For example, once a day through dial-up, radio, or satellite.

timeout
A value that tells DTS how long to wait for a response from the TP process.

noClockSet
A value that specifies whether or not DTS is allowed to alter the system clock. If noClockSet is specified as 0x01 (TRUE), DTS does not adjust or set the clock during the current synchronization. This option is useful for systems whose system clock is known to be accurate (such as systems equipped with special hardware) or systems that are managed by some other time service (such as Network Time Protocol (NTP)), but which still wish to function as a DTS server.

· Communication Status

An output parameter that contains a status code returned by the DCE RPC runtime library. The status rpc_s_ok is returned if the TP process is successfully contacted.

###