[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
C API: minor comments
Two last call comments on the C API regarding unsolicited notifications:
I recommend that in section 5 we add:
Implementations of the API SHOULD begin numbering messages with 1, to 
be able to easily distinguish client-generated requests and unsolicited
notifications.  
In section 13 I suggest we add after the first paragraph.
ldap_result() can also be used to obtain unsolicited notifications from
the server.  
In section 15 please note that a search can return extended responses
as well as a search result done, and so these belong in the chain.
I think it would be helpful if section 10 described what the meanings
of errors 0x51 through 0x61 are.  Of these only LDAP_PARAM_ERROR is
actually used in this draft:
 - LDAP_SERVER_DOWN (0x51)
	The client library could not send the request to the server as the
	connection has been lost.  The client can use ldap_result to obtain
	any outstanding results left on this connection, but cannot issue
	any new requests.  Once all the results have been obtained the client
	SHOULD use ldap_unbind() to complete the disconnection process.
 - LDAP_LOCAL_ERROR (0x52)
	The client library is in an inconsistent state.  
 - LDAP_ENCODING_ERROR (0x53)
	
 - LDAP_DECODING_ERROR (0x54)
 - LDAP_TIMEOUT (0x55)
	Return code from ldap_search_st().
 - LDAP_AUTH_UNKNOWN (0x56)
	Unsupported authmethod flag to ldap_bind() or ldap_bind_s().
 - LDAP_FILTER_ERROR (0x57)
	Filter parameter to search is not correctly written.
 - LDAP_USER_CANCELLED (0x58)
	Reserved.
 - LDAP_PARAM_ERROR (0x59)
 - LDAP_NO_MEMORY (0x5a)
 - LDAP_CONNECT_ERROR (0x5b)
 - LDAP_NOT_SUPPORTED (0x5c)
 - LDAP_CONTROL_NOT_FOUND (0x5d)
	Used by extensions to this API.
 - LDAP_NO_RESULTS_RETURNED (0x5e)
	Reserved.
 - LDAP_MORE_RESULTS_TO_RETURN (0x5f)
	Reserved.
 - LDAP_CLIENT_LOOP (0x60)
	Reserved.
 - LDAP_REFERRAL_LIMIT_EXCEEDED (0x61)
Open question on unsolicited notification:
 1. Do unsolicited notifications queue up in the client library until the
 client asks for them with ldap_result() or an ldap_unbind() occurs?  On
 a related note, what does the client library do if it receives a response
 for which there is no matching request?  
Mark Wahl, Directory Product Architect
Innosoft International, Inc.