[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [kmip] - KMIP 1.2 Sync/Async - Inconsistency: Usage Guide vs Spec
Greetings
The Usage Guide’s section 2.8 Synchronous and Asynchronous Messages states:
197 2.8 Synchronous and Asynchronous Messages
198 The protocol allows two modes of operation. Synchronous (mandatory) operations are those in
199 which a client sends a request and waits for a response from the server. Polled Asynchronous
200 operations (optional) are those in which the client sends a request, the server responds with a
201 “pending” status, and the client polls the server for the completed response and completion
202 status. Server implementations may choose not to support the Polled Asynchronous feature of
203 the protocol.
essentially saying that the server support for synchronous client requests is mandatory for all operations, whereas (additional) server support for asynchronous client requests is optional for any particular operation.
However, the KMIP Spec’s section 6.8 Asynchronous Correlation Value states:
1951 6.8 Asynchronous Correlation Value
1952 This is returned in the immediate response to an operation that is pending and that requires
1953 asynchronous polling. Note: the server decides which operations are performed synchronously or
1954 asynchronously. A server-generated correlation value SHALL be specified in any subsequent Poll or
1955 Cancel operations that pertain to the original operation.
essentially saying that a given operation may be supported synchronously or asynchronously at the server’s discretion. (This statement is itself somewhat ambiguous since it leaves open the possibility that a given server may support both synchronous and asynchronous response capability for the same operation, and the server’s decision to respond synchronously or asynchronously could be made dynamically. Acceptable behavior, I think, but not explicitly stated.)
We may presume that the KMIP Spec allows a server not to offer synchronous support of some operations because section 6.7 Asynchronous Indicator states:
1944 6.7 Asynchronous Indicator
1945 This Boolean flag indicates whether the client is able to accept an asynchronous response. It SHALL
1946 have the Boolean value True if the client is able to handle asynchronous responses, and the value False
1947 otherwise. If not present in a request, then False is assumed. If a client indicates that it is not able to
1948 handle asynchronous responses (i.e., flag is set to False), and the server is not able to process the
1949 request synchronously, then the server SHALL respond to the request with a failure.
Regards,
… Dave
The information contained in this electronic mail transmission may be privileged and confidential, and therefore, protected from disclosure. If you have received this communication in error, please notify us immediately by replying to this message and deleting it from your computer without copying or disclosing it.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]