3 Protocol Details
Content Indexing Services Protocol message requests require only minimal sequencing. A CPMSetCatStateIn message MAY be called at any time. All other messages MUST be preceded by an initial CPMConnectIn message (for example, at least one CPMConnectIn message for each named pipe connection). Beyond the initial connection, there is no other sequencing required by the protocol. However, it is advised that the higher layer adhere to a meaningful message sequence. Some messages include data returned by previous messages. Even though it is legal to send messages in any order, the server will return an error if the data in a particular message is invalid. Message dependencies define only a partial order of message sequence - other messages can be interspersed.
The following figure shows how messages depend on the data from previous messages.
Figure 4: Typical message sequence for a simple query from client to remote computer