Data Structures | |
struct | apr_ldap_err_t |
struct | apr_ldap_opt_tls_cert_t |
struct | apr_ldap_url_desc_t |
Defines | |
#define | APR_HAS_LDAP 1 |
#define | APR_HAS_NETSCAPE_LDAPSDK 0 |
#define | APR_HAS_SOLARIS_LDAPSDK 0 |
#define | APR_HAS_NOVELL_LDAPSDK 0 |
#define | APR_HAS_MOZILLA_LDAPSDK 0 |
#define | APR_HAS_OPENLDAP_LDAPSDK 1 |
#define | APR_HAS_MICROSOFT_LDAPSDK 0 |
#define | APR_HAS_TIVOLI_LDAPSDK 0 |
#define | APR_HAS_ZOS_LDAPSDK 0 |
#define | APR_HAS_OTHER_LDAPSDK 0 |
#define | APR_HAS_LDAP_SSL 1 |
#define | APR_HAS_LDAP_URL_PARSE 0 |
#define | LDAP_DEPRECATED 1 |
#define | APR_HAS_LDAPSSL_CLIENT_INIT 0 |
#define | APR_HAS_LDAPSSL_CLIENT_DEINIT 0 |
#define | APR_HAS_LDAPSSL_ADD_TRUSTED_CERT 0 |
#define | APR_HAS_LDAP_START_TLS_S 1 |
#define | APR_HAS_LDAP_SSLINIT 0 |
#define | APR_HAS_LDAPSSL_INIT 0 |
#define | APR_HAS_LDAPSSL_INSTALL_ROUTINES 0 |
#define | LDAPS_PORT 636 |
#define | APR_LDAP_SIZELIMIT 0 |
#define | LDAP_VERSION_MAX LDAP_VERSION |
#define | APR_LDAP_IS_SERVER_DOWN(s) ((s) == LDAP_SERVER_DOWN) |
#define | APU_DECLARE_LDAP(type) APU_DECLARE(type) |
#define | APU_LDAP_INSUFFICIENT_ACCESS LDAP_INSUFFICIENT_RIGHTS |
#define | APU_LDAP_SECURITY_ERROR(n) |
#define | APR_LDAP_OPT_TLS 0x6fff |
#define | APR_LDAP_OPT_TLS_CERT 0x6ffe |
#define | APR_LDAP_OPT_VERIFY_CERT 0x6ffd |
#define | APR_LDAP_OPT_REFERRALS 0x6ffc |
#define | APR_LDAP_OPT_REFHOPLIMIT 0x6ffb |
#define | APR_LDAP_CA_TYPE_UNKNOWN 0 |
#define | APR_LDAP_CA_TYPE_DER 1 |
#define | APR_LDAP_CA_TYPE_BASE64 2 |
#define | APR_LDAP_CA_TYPE_CERT7_DB 3 |
#define | APR_LDAP_CA_TYPE_SECMOD 4 |
#define | APR_LDAP_CERT_TYPE_UNKNOWN 5 |
#define | APR_LDAP_CERT_TYPE_DER 6 |
#define | APR_LDAP_CERT_TYPE_BASE64 7 |
#define | APR_LDAP_CERT_TYPE_KEY3_DB 8 |
#define | APR_LDAP_CERT_TYPE_NICKNAME 9 |
#define | APR_LDAP_KEY_TYPE_UNKNOWN 10 |
#define | APR_LDAP_KEY_TYPE_DER 11 |
#define | APR_LDAP_KEY_TYPE_BASE64 12 |
#define | APR_LDAP_CERT_TYPE_PFX 13 |
#define | APR_LDAP_KEY_TYPE_PFX 14 |
#define | APR_LDAP_CA_TYPE_CACERTDIR_BASE64 15 |
#define | APR_LDAP_NONE 0 |
#define | APR_LDAP_SSL 1 |
#define | APR_LDAP_STARTTLS 2 |
#define | APR_LDAP_STOPTLS 3 |
#define | APR_LDAP_URL_SUCCESS 0x00 |
#define | APR_LDAP_URL_ERR_MEM 0x01 |
#define | APR_LDAP_URL_ERR_PARAM 0x02 |
#define | APR_LDAP_URL_ERR_BADSCHEME 0x03 |
#define | APR_LDAP_URL_ERR_BADENCLOSURE 0x04 |
#define | APR_LDAP_URL_ERR_BADURL 0x05 |
#define | APR_LDAP_URL_ERR_BADHOST 0x06 |
#define | APR_LDAP_URL_ERR_BADATTRS 0x07 |
#define | APR_LDAP_URL_ERR_BADSCOPE 0x08 |
#define | APR_LDAP_URL_ERR_BADFILTER 0x09 |
#define | APR_LDAP_URL_ERR_BADEXTS 0x0a |
Typedefs | |
typedef apr_ldap_opt_tls_cert_t | apr_ldap_opt_tls_cert_t |
Functions | |
int | apr_ldap_ssl_init (apr_pool_t *pool, const char *cert_auth_file, int cert_file_type, apr_ldap_err_t **result_err) |
int | apr_ldap_ssl_deinit (void) |
int | apr_ldap_init (apr_pool_t *pool, LDAP **ldap, const char *hostname, int portno, int secure, apr_ldap_err_t **result_err) |
int | apr_ldap_info (apr_pool_t *pool, apr_ldap_err_t **result_err) |
int | apr_ldap_get_option (apr_pool_t *pool, LDAP *ldap, int option, void *outvalue, apr_ldap_err_t **result_err) |
int | apr_ldap_set_option (apr_pool_t *pool, LDAP *ldap, int option, const void *invalue, apr_ldap_err_t **result_err) |
apr_status_t | apr_ldap_rebind_init (apr_pool_t *pool) |
apr_status_t | apr_ldap_rebind_add (apr_pool_t *pool, LDAP *ld, const char *bindDN, const char *bindPW) |
apr_status_t | apr_ldap_rebind_remove (LDAP *ld) |
int | apr_ldap_is_ldap_url (const char *url) |
int | apr_ldap_is_ldaps_url (const char *url) |
int | apr_ldap_is_ldapi_url (const char *url) |
int | apr_ldap_url_parse_ext (apr_pool_t *pool, const char *url_in, apr_ldap_url_desc_t **ludpp, apr_ldap_err_t **result_err) |
int | apr_ldap_url_parse (apr_pool_t *pool, const char *url_in, apr_ldap_url_desc_t **ludpp, apr_ldap_err_t **result_err) |
|
PEM encoded CA certificate |
|
Openldap directory full of base64-encoded cert authorities with hashes in corresponding .0 directory |
|
Netscape/Mozilla cert7.db CA certificate database |
|
binary DER encoded CA certificate |
|
Netscape/Mozilla secmod file |
|
CA certificate type unknown |
|
PEM encoded client certificate |
|
binary DER encoded client certificate |
|
Netscape/Mozilla key3.db client certificate database |
|
Netscape/Mozilla client certificate nickname |
|
PKCS#12 encoded client certificate |
|
Client certificate type unknown |
|
PEM encoded private key |
|
binary DER encoded private key |
|
PKCS#12 encoded private key |
|
Private key type unknown |
|
No encryption |
|
Set the LDAP library to indicate if referrals should be chased during LDAP searches. |
|
Set the LDAP library to indicate a maximum number of referral hops to chase before giving up on the search. |
|
Set SSL mode to one of APR_LDAP_NONE, APR_LDAP_SSL, APR_LDAP_STARTTLS or APR_LDAP_STOPTLS. |
|
Set zero or more CA certificates, client certificates or private keys globally, or per connection (where supported). |
|
Set the LDAP library to no verify the server certificate. This means all servers are considered trusted. |
|
SSL encryption (ldaps://) |
|
TLS encryption (STARTTLS) |
|
end TLS encryption (STOPTLS) |
|
Macro to detect security related return values. |
|
Value: (LDAP_INAPPROPRIATE_AUTH == n) ? 1 \ : (LDAP_INVALID_CREDENTIALS == n) ? 1 \ : (APU_LDAP_INSUFFICIENT_ACCESS == n) ? 1 \ : 0 |
|
Certificate structure. This structure is used to store certificate details. An array of these structures is passed to apr_ldap_set_option() to set CA and client certificates.
|
|
APR LDAP get option function This function gets option values from a given LDAP session if one was specified. It maps to the native ldap_get_option() function.
|
|
APR LDAP info function This function returns a string describing the LDAP toolkit currently in use. The string is placed inside result_err->reason.
|
|
APR LDAP initialise function This function is responsible for initialising an LDAP connection in a toolkit independant way. It does the job of ldap_init() from the C api. It handles both the SSL and non-SSL case, and attempts to hide the complexity setup from the user. This function assumes that any certificate setup necessary has already been done. If SSL or STARTTLS needs to be enabled, and the underlying toolkit supports it, the following values are accepted for secure: APR_LDAP_NONE: No encryption APR_LDAP_SSL: SSL encryption (ldaps://) APR_LDAP_STARTTLS: Force STARTTLS on ldap://
|
|
Is this URL an ldap url? ldap://
|
|
Is this URL an ldap socket url? ldapi://
|
|
Is this URL an SSL ldap url? ldaps://
|
|
APR LDAP rebind_add function This function creates a cross reference entry for the specified ldap connection. The rebind callback function will look up this ldap connection so it can retrieve the bindDN and bindPW for use in any binds while referrals are being chased. This function will add the callback to the LDAP handle passed in. A cleanup is registered within the pool provided to remove this entry when the pool is removed. Alternatively apr_ldap_rebind_remove() can be called to explicitly remove the entry at will.
|
|
APR LDAP initialize rebind lock This function creates the lock for controlling access to the xref list..
|
|
APR LDAP rebind_remove function This function removes the rebind cross reference entry for the specified ldap connection. If not explicitly removed, this function will be called automatically when the pool is cleaned up.
|
|
APR LDAP set option function This function sets option values to a given LDAP session if one was specified. It maps to the native ldap_set_option() function. Where an option is not supported by an LDAP toolkit, this function will try and apply legacy functions to achieve the same effect, depending on the platform.
|
|
APR LDAP SSL De-Initialise function This function tears down any SSL certificate setup previously set using apr_ldap_ssl_init(). It should be called to clean up if a graceful restart of a service is attempted.
|
|
APR LDAP SSL Initialise function This function initialises SSL on the underlying LDAP toolkit if this is necessary. If a CA certificate is provided, this is set, however the setting of certificates via this method has been deprecated and will be removed in APR v2.0. The apr_ldap_set_option() function with the APR_LDAP_OPT_TLS_CERT option should be used instead to set certificates. If SSL support is not available on this platform, or a problem was encountered while trying to set the certificate, the function will return APR_EGENERAL. Further LDAP specific error information can be found in result_err.
|
|
Parse an LDAP URL.
|
|
Parse an LDAP URL.
|