module Ldap_error: sig .. end
given an ldap error code return a string describing it
val err2string : [> `ADMINLIMIT_EXCEEDED
        | `ALIAS_DEREF_PROBLEM
        | `ALIAS_PROBLEM
        | `ALREADY_EXISTS
        | `AUTH_METHOD_NOT_SUPPORTED
        | `BUSY
        | `COMPARE_FALSE
        | `COMPARE_TRUE
        | `CONFIDENTIALITY_REQUIRED
        | `CONSTRAINT_VIOLATION
        | `INAPPROPRIATE_AUTH
        | `INAPPROPRIATE_MATCHING
        | `INSUFFICIENT_ACCESS
        | `INVALID_CREDENTIALS
        | `INVALID_DN_SYNTAX
        | `INVALID_SYNTAX
        | `LOCAL_ERROR
        | `LOOP_DETECT
        | `NAMING_VIOLATION
        | `NOT_ALLOWED_ON_NONLEAF
        | `NOT_ALLOWED_ON_RDN
        | `NO_OBJECT_CLASS_MODS
        | `NO_SUCH_ATTRIBUTE
        | `NO_SUCH_OBJECT
        | `OBJECT_CLASS_VIOLATION
        | `OPERATIONS_ERROR
        | `OTHER
        | `PROTOCOL_ERROR
        | `REFERRAL
        | `SASL_BIND_IN_PROGRESS
        | `SERVER_DOWN
        | `SIZELIMIT_EXCEEDED
        | `STRONG_AUTH_REQUIRED
        | `SUCCESS
        | `TIMELIMIT_EXCEEDED
        | `TYPE_OR_VALUE_EXISTS
        | `UNAVAILABLE
        | `UNAVAILABLE_CRITICAL_EXTENSION
        | `UNDEFINED_TYPE
        | `UNWILLING_TO_PERFORM ] ->
       string
given an ldap error code return a string describing it
val ldap_strerror : string -> exn -> string
return a string with a human readable description of an LDAP_Failure exception
val ldap_perror : string -> exn -> unit
print to stderr a string with a human readable description of an LDAP_Failure exception