package ocamldap
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=be85eccfa45de6066238da85c6ad2a409d69df245b6cd2b740ec2bf3400b587c
md5=6137a123978ac5b0dd301af26122e437
doc/ldap/Ldap_types/index.html
Module Ldap_types
Common data types used by ocamldap. Most of these types are taken from the ASN.1 specification for LDAP as defined in rfc2251 @see <http://www.ietf.org/rfc/rfc2251.txt> rfc2251
An encoding error has occurred, the argument contains a description of the error This is likely a bug, so it should be reported
A decoding error has occurred, the argument contains a description of the error. This MAY be a bug, but it may also be that the server you are talking to is non standard. Please report these right away in any case.
type ldap_resultcode = [ | `SUCCESS| `OPERATIONS_ERROR| `PROTOCOL_ERROR| `TIMELIMIT_EXCEEDED| `SIZELIMIT_EXCEEDED| `COMPARE_FALSE| `COMPARE_TRUE| `AUTH_METHOD_NOT_SUPPORTED| `STRONG_AUTH_REQUIRED| `REFERRAL| `ADMINLIMIT_EXCEEDED| `UNAVAILABLE_CRITICAL_EXTENSION| `CONFIDENTIALITY_REQUIRED| `SASL_BIND_IN_PROGRESS| `NO_SUCH_ATTRIBUTE| `UNDEFINED_TYPE| `INAPPROPRIATE_MATCHING| `CONSTRAINT_VIOLATION| `TYPE_OR_VALUE_EXISTS| `INVALID_SYNTAX| `NO_SUCH_OBJECT| `ALIAS_PROBLEM| `INVALID_DN_SYNTAX| `IS_LEAF| `ALIAS_DEREF_PROBLEM| `INAPPROPRIATE_AUTH| `INVALID_CREDENTIALS| `INSUFFICIENT_ACCESS| `BUSY| `UNAVAILABLE| `UNWILLING_TO_PERFORM| `LOOP_DETECT| `NAMING_VIOLATION| `OBJECT_CLASS_VIOLATION| `NOT_ALLOWED_ON_NONLEAF| `NOT_ALLOWED_ON_RDN| `ALREADY_EXISTS| `NO_OBJECT_CLASS_MODS| `AFFECTS_MULTIPLE_DSAS| `OTHER| `SERVER_DOWN| `LOCAL_ERROR| `ENCODING_ERROR| `DECODING_ERROR| `TIMEOUT| `AUTH_UNKNOWN| `FILTER_ERROR| `USER_CANCELLED| `PARAM_ERROR| `NO_MEMORY| `CONNECT_ERROR| `NOT_SUPPORTED| `CONTROL_NOT_FOUND| `NO_RESULTS_RETURNED| `MORE_RESULTS_TO_RETURN| `CLIENT_LOOP| `REFERRAL_LIMIT_EXCEEDED| `UNKNOWN_ERROR of int
]type ldap_result = {result_code : ldap_resultcode;matched_dn : string;error_message : string;ldap_referral : string list option;
}extended information to return with the LDAP_Failure exception. Contains the remaining values which are defined by the protocol ext_matched_dn: the matched dn. Commonly set by `NO_SUCH_OBJECT. ext_referral: a list of ldapurls returned by the server when you attempted to do a write operation. If you use Ldap_ooclient with referrals set to follow you will never see this
exception LDAP_Failure of ldap_resultcode * string * ldap_ext_returnThe exception raised to indicate all types of failure in the higher level libraries Ldap_funclient, and Ldap_ooclient. example LDAP_Failure (`NO_SUCH_OBJECT, "no such object", {ext_matched_dn=Some "o=csun";ext_referral=None})
type dn = attribute listthe type used to encode and decode a search entry. Also the type returned by search_s and search_a in Ldap_funclient
type search_scope = [ | `BASE(*search only at the base
*)| `ONELEVEL(*search one level below the base
*)| `SUBTREE(*search the entire tree under the base
*)
]a type defining the scope of a search filter
type filter = [ | `And of filter list| `Or of filter list| `Not of filter| `EqualityMatch of attribute_value_assertion| `Substrings of substring_filter| `GreaterOrEqual of attribute_value_assertion| `LessOrEqual of attribute_value_assertion| `Present of string| `ApproxMatch of attribute_value_assertion| `ExtensibleMatch of matching_rule_assertion
]type search_request = {baseObject : string;scope : search_scope;derefAliases : alias_deref;sizeLimit : int32;timeLimit : int32;typesOnly : bool;filter : filter;s_attributes : string list;
}type extended_response = {ext_result : ldap_result;ext_responseName : string option;ext_response : string option;
}type protocol_op = | Bind_request of bind_request| Bind_response of bind_response| Unbind_request| Search_request of search_request| Search_result_entry of search_result_entry| Search_result_reference of string list| Search_result_done of ldap_result| Modify_request of modify_request| Modify_response of ldap_result| Add_request of search_result_entry| Add_response of ldap_result| Delete_request of string| Delete_response of ldap_result| Modify_dn_request of modify_dn_request| Modify_dn_response of ldap_result| Compare_request of compare_request| Compare_response of ldap_result| Abandon_request of Int32.t| Extended_request of extended_request| Extended_response of extended_response
type control_details = [ | `Paged_results_control of paged_results_control_value| `Unknown_value of string
]type ldap_controls = ldap_control listtype ldap_url = {url_mech : con_mech;url_host : string option;url_port : string option;url_dn : string option;url_attributes : string list option;url_scope : search_scope option;url_filter : filter option;url_ext : (bool * string * string) list option;
}see draft-zeilenga-ldap-grouping-xx Ldap grouping is a way of telling the server that a set of ldap operations is related, its most interesting application is transactions across multiple objects. This draft is not yet implemented by any present day ldap server