ldap_perror (3)
NAME
ldap_perror, ld_errno, ldap_result2error, ldap_errlist, ldap_err2string - LDAP protocol error handling routinesLIBRARY
OpenLDAP LDAP (libldap, -lldap)SYNOPSIS
#include <ldap.h> char *ldap_err2string( int err );
DESCRIPTION
The ldap_err2string() routine provides short description of the various codes returned by routines in this library. The returned string is a pointer to a static area that should not be modified.These codes are either negative, indicating an API error code; positive, indicating an LDAP resultCode other than 'success' (0), or - zero, indicating both successful use of the API and the LDAP resultCode 'success' (0).
The code associated with an LDAP session is accessible using ldap_get_option(3) and ldap_set_option(3) with the LDAP_OPT_RESULT_CODE option (previously called LDAP_OPT_ERROR_NUMBER).
PROTOCOL RESULT CODES
This section provides a partial list of protocol codes recognized by the library. As LDAP is extensible, additional values may be returned. A complete listing of registered LDAP result codes can be obtained from the Internet Assigned Numbers Authority <www.iana.org>.
- LDAP_SUCCESS
- The request was successful.
- LDAP_OPERATIONS_ERROR
- An operations error occurred.
- LDAP_PROTOCOL_ERROR
- A protocol violation was detected.
- LDAP_TIMELIMIT_EXCEEDED
- An LDAP time limit was exceeded.
- LDAP_SIZELIMIT_EXCEEDED
- An LDAP size limit was exceeded.
- LDAP_COMPARE_FALSE
- A compare operation returned false.
- LDAP_COMPARE_TRUE
- A compare operation returned true.
- LDAP_STRONG_AUTH_NOT_SUPPORTED
- The LDAP server does not support strong authentication.
- LDAP_STRONG_AUTH_REQUIRED
- Strong authentication is required for the operation.
- LDAP_PARTIAL_RESULTS
- Partial results only returned.
- LDAP_NO_SUCH_ATTRIBUTE
- The attribute type specified does not exist in the entry.
- LDAP_UNDEFINED_TYPE
- The attribute type specified is invalid.
- LDAP_INAPPROPRIATE_MATCHING
- Filter type not supported for the specified attribute.
- LDAP_CONSTRAINT_VIOLATION
- An attribute value specified violates some constraint (e.g., a postalAddress has too many lines, or a line that is too long).
- LDAP_TYPE_OR_VALUE_EXISTS
- An attribute type or attribute value specified already exists in the entry.
- LDAP_INVALID_SYNTAX
- An invalid attribute value was specified.
- LDAP_NO_SUCH_OBJECT
- The specified object does not exist in The Directory.
- LDAP_ALIAS_PROBLEM
- An alias in The Directory points to a nonexistent entry.
- LDAP_INVALID_DN_SYNTAX
- A syntactically invalid DN was specified.
- LDAP_IS_LEAF
- The object specified is a leaf.
- LDAP_ALIAS_DEREF_PROBLEM
- A problem was encountered when dereferencing an alias.
- LDAP_INAPPROPRIATE_AUTH
- Inappropriate authentication was specified (e.g., LDAP_AUTH_SIMPLE was specified and the entry does not have a userPassword attribute).
- LDAP_INVALID_CREDENTIALS
- Invalid credentials were presented (e.g., the wrong password).
- LDAP_INSUFFICIENT_ACCESS
- The user has insufficient access to perform the operation.
- LDAP_BUSY
- The DSA is busy.
- LDAP_UNAVAILABLE
- The DSA is unavailable.
- LDAP_UNWILLING_TO_PERFORM
- The DSA is unwilling to perform the operation.
- LDAP_LOOP_DETECT
- A loop was detected.
- LDAP_NAMING_VIOLATION
- A naming violation occurred.
- LDAP_OBJECT_CLASS_VIOLATION
- An object class violation occurred (e.g., a "must" attribute was missing from the entry).
- LDAP_NOT_ALLOWED_ON_NONLEAF
- The operation is not allowed on a nonleaf object.
- LDAP_NOT_ALLOWED_ON_RDN
- The operation is not allowed on an RDN.
- LDAP_ALREADY_EXISTS
- The entry already exists.
- LDAP_NO_OBJECT_CLASS_MODS
- Object class modifications are not allowed.
- LDAP_OTHER
-
An unknown error occurred.
API ERROR CODES
This section provides a complete list of API error codes recognized by the library. Note that LDAP_SUCCESS indicates success of an API call in addition to representing the return of the LDAP 'success' resultCode.
- LDAP_SERVER_DOWN
- The LDAP library can't contact the LDAP server.
- LDAP_LOCAL_ERROR
- Some local error occurred. This is usually a failed dynamic memory allocation.
- LDAP_ENCODING_ERROR
- An error was encountered encoding parameters to send to the LDAP server.
- LDAP_DECODING_ERROR
- An error was encountered decoding a result from the LDAP server.
- LDAP_TIMEOUT
- A timelimit was exceeded while waiting for a result.
- LDAP_AUTH_UNKNOWN
- The authentication method specified to ldap_bind() is not known.
- LDAP_FILTER_ERROR
- An invalid filter was supplied to ldap_search() (e.g., unbalanced parentheses).
- LDAP_PARAM_ERROR
- An ldap routine was called with a bad parameter.
- LDAP_NO_MEMORY
- An memory allocation (e.g., malloc(3) or other dynamic memory allocator) call failed in an ldap library routine.
- LDAP_USER_CANCELED
- Indicates the user cancelled the operation.
- LDAP_CONNECT_ERROR
- Indicates a connection problem.
- LDAP_NOT_SUPPORTED
- Indicates the routine was called in a manner not supported by the library.
- LDAP_CONTROL_NOT_FOUND
- Indicates the control provided is unknown to the client library.
- LDAP_NO_RESULTS_RETURNED
- Indicates no results returned.
- LDAP_MORE_RESULTS_TO_RETURN
- Indicates more results could be returned.
- LDAP_CLIENT_LOOP
- Indicates the library has detected a loop in its processing.
- LDAP_REFERRAL_LIMIT_EXCEEDED
-
Indicates the referral limit has been exceeded.