Apache Portable Runtime
Loading...
Searching...
No Matches
Data Structures | Macros | Typedefs | Enumerations | Functions
apr_ldap.h File Reference

APR-UTIL LDAP routines. More...

#include "apr.h"
#include "apu.h"
#include "apr_poll.h"
#include "apr_pools.h"
#include "apr_network_io.h"
#include "apu_errno.h"
#include "apr_escape.h"
#include "apr_buffer.h"

Go to the source code of this file.

Data Structures

struct  apr_ldap_url_desc_t
 
struct  apr_ldap_apiinfo_t
 
struct  apr_ldap_apifeature_info_t
 
struct  apr_ldap_opt_tls_cert_t
 
union  apr_ldap_opt_t
 
struct  apr_ldap_bind_interact_t
 

Macros

#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
 
#define APU_DECLARE_LDAP(type)   APR_DECLARE(type)
 
#define APR_LDAP_PORT   389
 
#define APR_LDAPS_PORT   636
 
#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_OPT_HANDLE   0x6ffa
 
#define APR_LDAP_OPT_PROTOCOL_VERSION   0x6ff9
 
#define APR_LDAP_OPT_API_INFO   0x6ff8
 
#define APR_LDAP_OPT_API_FEATURE_INFO   0x6ff7
 
#define APR_LDAP_OPT_DEREF   0x6ff6
 
#define APR_LDAP_OPT_RESULT_CODE   0x6ff5
 
#define APR_LDAP_OPT_DESC   0x6ff4
 
#define APR_LDAP_OPT_URI   0x5006
 
#define APR_LDAP_OPT_NETWORK_TIMEOUT   0x5005
 
#define APR_LDAP_OPT_TIMEOUT   0x5002
 
#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_CACERTDIR_BASE64   15
 
#define APR_LDAP_CA_TYPE_URI   18
 
#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_PFX   13
 
#define APR_LDAP_CERT_TYPE_URI   16
 
#define APR_LDAP_KEY_TYPE_UNKNOWN   10
 
#define APR_LDAP_KEY_TYPE_DER   11
 
#define APR_LDAP_KEY_TYPE_BASE64   12
 
#define APR_LDAP_KEY_TYPE_PFX   14
 
#define APR_LDAP_KEY_TYPE_URI   17
 

Typedefs

typedef struct apr_ldap_url_desc_t apr_ldap_url_desc_t
 
typedef struct apr_ldap_driver_t apr_ldap_driver_t
 
typedef struct apr_ldap_t apr_ldap_t
 
typedef struct apr_ldap_apiinfo_t apr_ldap_apiinfo_t
 
typedef struct apr_ldap_apifeature_info_t apr_ldap_apifeature_info_t
 
typedef struct apr_ldap_opt_tls_cert_t apr_ldap_opt_tls_cert_t
 
typedef union apr_ldap_opt_t apr_ldap_opt_t
 
typedef struct apr_ldap_bind_interact_t apr_ldap_bind_interact_t
 
typedef apr_status_t apr_ldap_bind_interact_cb(apr_ldap_t *ld, unsigned int flags, apr_ldap_bind_interact_t *interact, void *ctx)
 
typedef struct apr_ldap_control_t apr_ldap_control_t
 
typedef apr_status_t(* apr_ldap_prepare_cb) (apr_ldap_t *ldap, apr_status_t status, void *ctx, apu_err_t *err)
 
typedef apr_status_t(* apr_ldap_bind_cb) (apr_ldap_t *ldap, apr_status_t status, const char *matcheddn, apr_ldap_control_t **serverctrls, void *ctx, apu_err_t *err)
 
typedef apr_status_t(* apr_ldap_compare_cb) (apr_ldap_t *ldap, apr_status_t status, const char *matcheddn, apr_ldap_control_t **serverctrls, void *ctx, apu_err_t *err)
 
typedef apr_status_t(* apr_ldap_search_result_cb) (apr_ldap_t *ldap, apr_status_t status, apr_size_t count, const char *matcheddn, apr_ldap_control_t **serverctrls, void *ctx, apu_err_t *err)
 
typedef apr_status_t(* apr_ldap_search_entry_cb) (apr_ldap_t *ldap, const char *dn, int eidx, int nattrs, int aidx, const char *attr, int nvals, int vidx, apr_buffer_t *val, int binary, void *ctx, apu_err_t *err)
 

Enumerations

enum  apr_ldap_protocol_version_e { APR_LDAP_VERSION1 = 1 , APR_LDAP_VERSION2 = 2 , APR_LDAP_VERSION3 = 3 }
 
enum  apr_ldap_deref_e { APR_LDAP_DEREF_NEVER = 0 , APR_LDAP_DEREF_SEARCHING = 1 , APR_LDAP_DEREF_FINDING = 2 , APR_LDAP_DEREF_ALWAYS = 3 }
 
enum  apr_ldap_switch_e { APR_LDAP_OPT_OFF = 0 , APR_LDAP_OPT_ON = 1 }
 
enum  apr_ldap_tls_e { APR_LDAP_TLS_NONE = 0 , APR_LDAP_TLS_SSL = 1 , APR_LDAP_TLS_STARTTLS = 2 , APR_LDAP_TLS_STOPTLS = 3 }
 
enum  apr_ldap_verify_e { APR_LDAP_VERIFY_OFF = 0 , APR_LDAP_VERIFY_ON = 1 }
 
enum  apr_ldap_bind_interact_e {
  APR_LDAP_INTERACT_DN = 0 , APR_LDAP_INTERACT_GETREALM = 0x4008 , APR_LDAP_INTERACT_AUTHNAME = 0x4002 , APR_LDAP_INTERACT_USER = 0x4001 ,
  APR_LDAP_INTERACT_PASS = 0x4004 , APR_LDAP_INTERACT_NOECHOPROMPT = 0x4006 , APR_LDAP_INTERACT_ECHOPROMPT = 0x4005
}
 
enum  apr_ldap_search_scope_e { APR_LDAP_SCOPE_BASE = 0x0000 , APR_LDAP_SCOPE_ONELEVEL = 0x0001 , APR_LDAP_SCOPE_SUBTREE = 0x0002 , APR_LDAP_SCOPE_SUBORDINATE = 0x0003 }
 

Functions

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, apu_err_t **result_err)
 
int apr_ldap_url_parse (apr_pool_t *pool, const char *url_in, apr_ldap_url_desc_t **ludpp, apu_err_t **result_err)
 
apr_status_t apr_ldap_get_driver (apr_pool_t *pool, const apr_ldap_driver_t **driver, apu_err_t *err)
 
apr_status_t apr_ldap_info (apr_pool_t *pool, apu_err_t **result_err)
 
apr_status_t apr_ldap_initialise (apr_pool_t *pool, apr_ldap_t **ldap, apu_err_t *err)
 
apr_status_t apr_ldap_option_get (apr_pool_t *pool, apr_ldap_t *ldap, int option, apr_ldap_opt_t *outvalue, apu_err_t *result_err)
 
apr_status_t apr_ldap_option_set (apr_pool_t *pool, apr_ldap_t *ldap, int option, const apr_ldap_opt_t *invalue, apu_err_t *result_err)
 
apr_status_t apr_ldap_connect (apr_pool_t *pool, apr_ldap_t *ldap, apr_interval_time_t timeout, apu_err_t *result_err)
 
apr_status_t apr_ldap_prepare (apr_pool_t *pool, apr_ldap_t *ldap, apr_ldap_prepare_cb prepare_cb, void *prepare_ctx)
 
apr_status_t apr_ldap_process (apr_pool_t *pool, apr_ldap_t *ldap, apr_interval_time_t timeout, apu_err_t *err)
 
apr_status_t apr_ldap_result (apr_pool_t *pool, apr_ldap_t *ldap, apr_interval_time_t timeout, apu_err_t *err)
 
apr_status_t apr_ldap_poll (apr_pool_t *pool, apr_ldap_t *ldap, apr_pollcb_t *poll, apr_interval_time_t timeout, apu_err_t *err)
 
apr_status_t apr_ldap_bind (apr_pool_t *pool, apr_ldap_t *ldap, const char *mech, apr_ldap_bind_interact_cb *interact_cb, void *interact_ctx, apr_interval_time_t timeout, apr_ldap_bind_cb bind_cb, void *bind_ctx, apu_err_t *err)
 
apr_status_t apr_ldap_compare (apr_pool_t *pool, apr_ldap_t *ldap, const char *dn, const char *attr, const apr_buffer_t *val, apr_ldap_control_t **serverctrls, apr_ldap_control_t **clientctrls, apr_interval_time_t timeout, apr_ldap_compare_cb compare_cb, void *ctx, apu_err_t *err)
 
apr_status_t apr_ldap_search (apr_pool_t *pool, apr_ldap_t *ldap, const char *dn, apr_ldap_search_scope_e scope, const char *filter, const char **attrs, apr_ldap_switch_e attrsonly, apr_ldap_control_t **serverctrls, apr_ldap_control_t **clientctrls, apr_interval_time_t timeout, apr_ssize_t sizelimit, apr_ldap_search_result_cb search_result_cb, apr_ldap_search_entry_cb search_entry_cb, void *ctx, apu_err_t *err)
 
apr_status_t apr_ldap_unbind (apr_ldap_t *ldap, apr_ldap_control_t **serverctrls, apr_ldap_control_t **clientctrls, apu_err_t *err)
 

Detailed Description

APR-UTIL LDAP routines.