module Ocamldap: sig end
Direct access to LDAP function
type
conn
type
auth_method = [ `SIMPLE ]
type
error_code = [ `ADMINLIMIT_EXCEEDED
| `AFFECTS_MULTIPLE_DSAS
| `ALIAS_DEREF_PROBLEM
| `ALIAS_PROBLEM
| `ALREADY_EXISTS
| `AUTH_METHOD_NOT_SUPPORTED
| `AUTH_UNKNOWN
| `BUSY
| `CLIENT_LOOP
| `COMPARE_FALSE
| `COMPARE_TRUE
| `CONFIDENTIALITY_REQUIRED
| `CONNECT_ERROR
| `CONSTRAINT_VIOLATION
| `CONTROL_NOT_FOUND
| `DECODING_ERROR
| `ENCODING_ERROR
| `FILTER_ERROR
| `INAPPROPRIATE_AUTH
| `INAPPROPRIATE_MATCHING
| `INSUFFICIENT_ACCESS
| `INVALID_CREDENTIALS
| `INVALID_DN_SYNTAX
| `INVALID_SYNTAX
| `IS_LEAF
| `LOCAL_ERROR
| `LOOP_DETECT
| `MORE_RESULTS_TO_RETURN
| `NAMING_VIOLATION
| `NOT_ALLOWED_ON_NONLEAF
| `NOT_ALLOWED_ON_RDN
| `NOT_SUPPORTED
| `NO_MEMORY
| `NO_OBJECT_CLASS_MODS
| `NO_RESULTS_RETURNED
| `NO_SUCH_ATTRIBUTE
| `NO_SUCH_OBJECT
| `OBJECT_CLASS_VIOLATION
| `OPERATIONS_ERROR
| `OTHER
| `PARAM_ERROR
| `PARTIAL_RESULTS
| `PROTOCOL_ERROR
| `REFERRAL
| `REFERRAL_LIMIT_EXCEEDED
| `RESULTS_TOO_LARGE
| `SASL_BIND_IN_PROGRESS
| `SERVER_DOWN
| `SIZELIMIT_EXCEEDED
| `STRONG_AUTH_NOT_SUPPORTED
| `STRONG_AUTH_REQUIRED
| `SUCCESS
| `TIMELIMIT_EXCEEDED
| `TIMEOUT
| `TYPE_OR_VALUE_EXISTS
| `UNAVAILABLE
| `UNAVAILABLE_CRITICAL_EXTENSION
| `UNDEFINED_TYPE
| `UNWILLING_TO_PERFORM
| `USER_CANCELLED ]
type
mod_op = [ `ADD | `DELETE | `REPLACE ]
type
search_scope = [ `BASE | `ONELEVEL | `SUBTREE ]
type
attr = {
|
attr_name : string ; |
|
attr_values : string array ; |
}
type
entry = {
|
entry_dn : string ; |
|
entry_attrs : attr array ; |
}
type
modattr = mod_op * string * string list
type
result = entry list
exception LDAP_Failure of error_code
Direct access to LDAP function
val add_s : conn -> dn:string -> attr:modattr list -> unit
Adds a new entry to the ldap database.
val bind_s : ?who:string ->
?cred:string -> ?auth_method:auth_method -> conn -> unit
Binds to the ldap server with the given credential and auth_method.
val delete_s : conn -> dn:string -> unit
Deletes the entry with the given dn from the database.
val err2string : error_code -> string
Retrieves an error message for the given ldap error code.
val init : ?version:int -> ?port:int -> string -> conn
Initializes a connection to the given ldap server. The connection is
* not actually established until one of the bind functions is called.
val modify_s : conn -> dn:string -> mods:modattr list -> unit
Modifies the specified entry with the modifications supplied in 'mods'.
val modrdn_s : conn -> dn:string -> newdn:string -> unit
Renames the given entry to newdn, modrdn always deletes the old rdn.
Same as modrdn but modrdn2 optionally deletes the old rdn.
val modrdn2_s : conn -> dn:string -> newdn:string -> deleteoldrdn:bool -> unit
val print_entry : ?channel:Pervasives.out_channel -> entry -> unit
Prints the given entry in LDIF format to the specified channel.
val search_s : ?base:string ->
?scope:search_scope ->
?attrs:string list ->
?attrsonly:bool -> conn -> string -> result
Search for the given entry with the specified base node and search scope,
optionally limiting the returned attributes to those listed in 'attrs'.
val simple_bind_s : ?who:string -> ?password:string -> conn -> unit
Bind using simple authentication. This is equivalent to calling bind_s
with auth_method `SIMPLE
val unbind : conn -> unit
Releases the ldap connection and frees associated resources. The ldap
connection should not be used after it has been unbound.