3.2.4.2.1 Sending a CPMConnectIn Request
This message is typically the very first request from the higher layer (as if the client is not connected, the server will fail most of the messages with the exception of CPMSetCatStateIn). The higher level provides the protocol client with the information necessary to connect.
To serve the higher layer, the client MUST do the following:
Fill in the message, using information that the higher layer client provided (see section 2.2.3.6) in _iClientVersion, MachineName, UserName, PropertySet1, PropertySet2, and aPropertySet.
Set _fClientIsRemote, _cbBlob, _cbBlob2, cPropSet, and cExtPropSet, as specified in section 2.2.3.6.
Set the checksum in the _ulChecksum field.
Send the CPMConnectIn message to the server.
Wait to receive a CPMConnectOut message back from the server, silently discarding all other messages.
Report back the value of the _status field of the response (and, if it was successful, the _serverVersion) to the higher layer.
For informative purposes, it is expected that higher layers will typically do the following actions on successful connection, but these are not enforced by the Content Indexing Services Protocol client:
Use remote indexing service catalog management messages for administrative tasks.
Use a CPMCreateQueryIn request to create a search query with the purpose of retrieving results from the catalog.