Back to index

openldap  2.4.31
Classes | Defines | Typedefs | Enumerations
back-ldap.h File Reference
#include "../back-monitor/back-monitor.h"
#include "proto-ldap.h"
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ldap_monitor_info_t
struct  ldapconn_base_t
struct  ldapconn_t
struct  ldap_avl_info_t
struct  slap_retry_info_t
struct  slap_idassert_t
struct  ldapinfo_t
struct  ldap_extra_t
struct  ldapinfo_t.li_conn_priv

Defines

#define LDAP_BACK_CONN2PRIV(lc)   ((unsigned long)(lc)->lc_conn)
#define LDAP_BACK_PCONN_ISPRIV(lc)
#define LDAP_BACK_PCONN_ISROOTDN(lc)
#define LDAP_BACK_PCONN_ISANON(lc)
#define LDAP_BACK_PCONN_ISBIND(lc)
#define LDAP_BACK_PCONN_ISTLS(lc)
#define LDAP_BACK_PCONN_ROOTDN_SET(lc, op)   ((lc)->lc_conn = (void *)LDAP_BACK_PCONN_ROOTDN)
#define LDAP_BACK_PCONN_ANON_SET(lc, op)   ((lc)->lc_conn = (void *)LDAP_BACK_PCONN_ANON)
#define LDAP_BACK_PCONN_BIND_SET(lc, op)   ((lc)->lc_conn = (void *)LDAP_BACK_PCONN_BIND)
#define LDAP_BACK_PCONN_SET(lc, op)
#define lc_conn   lc_base.lcb_conn
#define lc_local_ndn   lc_base.lcb_local_ndn
#define lc_refcnt   lc_base.lcb_refcnt
#define lc_create_time   lc_base.lcb_create_time
#define lc_time   lc_base.lcb_time
#define LDAP_BACK_CONN_ISSET_F(fp, f)   (*(fp) & (f))
#define LDAP_BACK_CONN_SET_F(fp, f)   (*(fp) |= (f))
#define LDAP_BACK_CONN_CLEAR_F(fp, f)   (*(fp) &= ~(f))
#define LDAP_BACK_CONN_CPY_F(fp, f, mfp)
#define LDAP_BACK_CONN_ISSET(lc, f)   LDAP_BACK_CONN_ISSET_F(&(lc)->lc_lcflags, (f))
#define LDAP_BACK_CONN_SET(lc, f)   LDAP_BACK_CONN_SET_F(&(lc)->lc_lcflags, (f))
#define LDAP_BACK_CONN_CLEAR(lc, f)   LDAP_BACK_CONN_CLEAR_F(&(lc)->lc_lcflags, (f))
#define LDAP_BACK_CONN_CPY(lc, f, mlc)   LDAP_BACK_CONN_CPY_F(&(lc)->lc_lcflags, (f), &(mlc)->lc_lcflags)
#define LDAP_BACK_FCONN_ISBOUND   (0x00000001U)
#define LDAP_BACK_FCONN_ISANON   (0x00000002U)
#define LDAP_BACK_FCONN_ISBMASK   (LDAP_BACK_FCONN_ISBOUND|LDAP_BACK_FCONN_ISANON)
#define LDAP_BACK_FCONN_ISPRIV   (0x00000004U)
#define LDAP_BACK_FCONN_ISTLS   (0x00000008U)
#define LDAP_BACK_FCONN_BINDING   (0x00000010U)
#define LDAP_BACK_FCONN_TAINTED   (0x00000020U)
#define LDAP_BACK_FCONN_ABANDON   (0x00000040U)
#define LDAP_BACK_FCONN_ISIDASR   (0x00000080U)
#define LDAP_BACK_FCONN_CACHED   (0x00000100U)
#define LDAP_BACK_CONN_ISBOUND(lc)   LDAP_BACK_CONN_ISSET((lc), LDAP_BACK_FCONN_ISBOUND)
#define LDAP_BACK_CONN_ISBOUND_SET(lc)   LDAP_BACK_CONN_SET((lc), LDAP_BACK_FCONN_ISBOUND)
#define LDAP_BACK_CONN_ISBOUND_CLEAR(lc)   LDAP_BACK_CONN_CLEAR((lc), LDAP_BACK_FCONN_ISBMASK)
#define LDAP_BACK_CONN_ISBOUND_CPY(lc, mlc)   LDAP_BACK_CONN_CPY((lc), LDAP_BACK_FCONN_ISBOUND, (mlc))
#define LDAP_BACK_CONN_ISANON(lc)   LDAP_BACK_CONN_ISSET((lc), LDAP_BACK_FCONN_ISANON)
#define LDAP_BACK_CONN_ISANON_SET(lc)   LDAP_BACK_CONN_SET((lc), LDAP_BACK_FCONN_ISANON)
#define LDAP_BACK_CONN_ISANON_CLEAR(lc)   LDAP_BACK_CONN_ISBOUND_CLEAR((lc))
#define LDAP_BACK_CONN_ISANON_CPY(lc, mlc)   LDAP_BACK_CONN_CPY((lc), LDAP_BACK_FCONN_ISANON, (mlc))
#define LDAP_BACK_CONN_ISPRIV(lc)   LDAP_BACK_CONN_ISSET((lc), LDAP_BACK_FCONN_ISPRIV)
#define LDAP_BACK_CONN_ISPRIV_SET(lc)   LDAP_BACK_CONN_SET((lc), LDAP_BACK_FCONN_ISPRIV)
#define LDAP_BACK_CONN_ISPRIV_CLEAR(lc)   LDAP_BACK_CONN_CLEAR((lc), LDAP_BACK_FCONN_ISPRIV)
#define LDAP_BACK_CONN_ISPRIV_CPY(lc, mlc)   LDAP_BACK_CONN_CPY((lc), LDAP_BACK_FCONN_ISPRIV, (mlc))
#define LDAP_BACK_CONN_ISTLS(lc)   LDAP_BACK_CONN_ISSET((lc), LDAP_BACK_FCONN_ISTLS)
#define LDAP_BACK_CONN_ISTLS_SET(lc)   LDAP_BACK_CONN_SET((lc), LDAP_BACK_FCONN_ISTLS)
#define LDAP_BACK_CONN_ISTLS_CLEAR(lc)   LDAP_BACK_CONN_CLEAR((lc), LDAP_BACK_FCONN_ISTLS)
#define LDAP_BACK_CONN_ISTLS_CPY(lc, mlc)   LDAP_BACK_CONN_CPY((lc), LDAP_BACK_FCONN_ISTLS, (mlc))
#define LDAP_BACK_CONN_BINDING(lc)   LDAP_BACK_CONN_ISSET((lc), LDAP_BACK_FCONN_BINDING)
#define LDAP_BACK_CONN_BINDING_SET(lc)   LDAP_BACK_CONN_SET((lc), LDAP_BACK_FCONN_BINDING)
#define LDAP_BACK_CONN_BINDING_CLEAR(lc)   LDAP_BACK_CONN_CLEAR((lc), LDAP_BACK_FCONN_BINDING)
#define LDAP_BACK_CONN_TAINTED(lc)   LDAP_BACK_CONN_ISSET((lc), LDAP_BACK_FCONN_TAINTED)
#define LDAP_BACK_CONN_TAINTED_SET(lc)   LDAP_BACK_CONN_SET((lc), LDAP_BACK_FCONN_TAINTED)
#define LDAP_BACK_CONN_TAINTED_CLEAR(lc)   LDAP_BACK_CONN_CLEAR((lc), LDAP_BACK_FCONN_TAINTED)
#define LDAP_BACK_CONN_ABANDON(lc)   LDAP_BACK_CONN_ISSET((lc), LDAP_BACK_FCONN_ABANDON)
#define LDAP_BACK_CONN_ABANDON_SET(lc)   LDAP_BACK_CONN_SET((lc), LDAP_BACK_FCONN_ABANDON)
#define LDAP_BACK_CONN_ABANDON_CLEAR(lc)   LDAP_BACK_CONN_CLEAR((lc), LDAP_BACK_FCONN_ABANDON)
#define LDAP_BACK_CONN_ISIDASSERT(lc)   LDAP_BACK_CONN_ISSET((lc), LDAP_BACK_FCONN_ISIDASR)
#define LDAP_BACK_CONN_ISIDASSERT_SET(lc)   LDAP_BACK_CONN_SET((lc), LDAP_BACK_FCONN_ISIDASR)
#define LDAP_BACK_CONN_ISIDASSERT_CLEAR(lc)   LDAP_BACK_CONN_CLEAR((lc), LDAP_BACK_FCONN_ISIDASR)
#define LDAP_BACK_CONN_ISIDASSERT_CPY(lc, mlc)   LDAP_BACK_CONN_CPY((lc), LDAP_BACK_FCONN_ISIDASR, (mlc))
#define LDAP_BACK_CONN_CACHED(lc)   LDAP_BACK_CONN_ISSET((lc), LDAP_BACK_FCONN_CACHED)
#define LDAP_BACK_CONN_CACHED_SET(lc)   LDAP_BACK_CONN_SET((lc), LDAP_BACK_FCONN_CACHED)
#define LDAP_BACK_CONN_CACHED_CLEAR(lc)   LDAP_BACK_CONN_CLEAR((lc), LDAP_BACK_FCONN_CACHED)
#define SLAP_RETRYNUM_FOREVER   (-1) /* retry forever */
#define SLAP_RETRYNUM_TAIL   (-2) /* end of retrynum array */
#define SLAP_RETRYNUM_VALID(n)   ((n) >= SLAP_RETRYNUM_FOREVER) /* valid retrynum */
#define SLAP_RETRYNUM_FINITE(n)   ((n) > SLAP_RETRYNUM_FOREVER) /* not forever */
#define li_idassert_mode   li_idassert.si_mode
#define li_idassert_authcID   li_idassert.si_bc.sb_authcId
#define li_idassert_authcDN   li_idassert.si_bc.sb_binddn
#define li_idassert_passwd   li_idassert.si_bc.sb_cred
#define li_idassert_authzID   li_idassert.si_bc.sb_authzId
#define li_idassert_authmethod   li_idassert.si_bc.sb_method
#define li_idassert_sasl_mech   li_idassert.si_bc.sb_saslmech
#define li_idassert_sasl_realm   li_idassert.si_bc.sb_realm
#define li_idassert_secprops   li_idassert.si_bc.sb_secprops
#define li_idassert_tls   li_idassert.si_bc.sb_tls
#define LDAP_BACK_AUTH_NONE   (0x00U)
#define LDAP_BACK_AUTH_NATIVE_AUTHZ   (0x01U)
#define LDAP_BACK_AUTH_OVERRIDE   (0x02U)
#define LDAP_BACK_AUTH_PRESCRIPTIVE   (0x04U)
#define LDAP_BACK_AUTH_OBSOLETE_PROXY_AUTHZ   (0x08U)
#define LDAP_BACK_AUTH_OBSOLETE_ENCODING_WORKAROUND   (0x10U)
#define LDAP_BACK_AUTH_AUTHZ_ALL   (0x20U)
#define LDAP_BACK_AUTH_PROXYAUTHZ_CRITICAL   (0x40U)
#define li_idassert_flags   li_idassert.si_flags
#define li_idassert_authz   li_idassert.si_authz
#define li_idassert_passthru   li_idassert.si_passthru
#define li_acl_authcID   li_acl.sb_authcId
#define li_acl_authcDN   li_acl.sb_binddn
#define li_acl_passwd   li_acl.sb_cred
#define li_acl_authzID   li_acl.sb_authzId
#define li_acl_authmethod   li_acl.sb_method
#define li_acl_sasl_mech   li_acl.sb_saslmech
#define li_acl_sasl_realm   li_acl.sb_realm
#define li_acl_secprops   li_acl.sb_secprops
#define LDAP_BACK_RETRY_UNDEFINED   (-2)
#define LDAP_BACK_RETRY_FOREVER   (-1)
#define LDAP_BACK_RETRY_NEVER   (0)
#define LDAP_BACK_RETRY_DEFAULT   (3)
#define LDAP_BACK_F_NONE   (0x00000000U)
#define LDAP_BACK_F_SAVECRED   (0x00000001U)
#define LDAP_BACK_F_USE_TLS   (0x00000002U)
#define LDAP_BACK_F_PROPAGATE_TLS   (0x00000004U)
#define LDAP_BACK_F_TLS_CRITICAL   (0x00000008U)
#define LDAP_BACK_F_TLS_LDAPS   (0x00000010U)
#define LDAP_BACK_F_TLS_USE_MASK   (LDAP_BACK_F_USE_TLS|LDAP_BACK_F_TLS_CRITICAL)
#define LDAP_BACK_F_TLS_PROPAGATE_MASK   (LDAP_BACK_F_PROPAGATE_TLS|LDAP_BACK_F_TLS_CRITICAL)
#define LDAP_BACK_F_TLS_MASK   (LDAP_BACK_F_TLS_USE_MASK|LDAP_BACK_F_TLS_PROPAGATE_MASK|LDAP_BACK_F_TLS_LDAPS)
#define LDAP_BACK_F_CHASE_REFERRALS   (0x00000020U)
#define LDAP_BACK_F_PROXY_WHOAMI   (0x00000040U)
#define LDAP_BACK_F_T_F   (0x00000080U)
#define LDAP_BACK_F_T_F_DISCOVER   (0x00000100U)
#define LDAP_BACK_F_T_F_MASK   (LDAP_BACK_F_T_F)
#define LDAP_BACK_F_T_F_MASK2   (LDAP_BACK_F_T_F_MASK|LDAP_BACK_F_T_F_DISCOVER)
#define LDAP_BACK_F_MONITOR   (0x00000200U)
#define LDAP_BACK_F_SINGLECONN   (0x00000400U)
#define LDAP_BACK_F_USE_TEMPORARIES   (0x00000800U)
#define LDAP_BACK_F_ISOPEN   (0x00001000U)
#define LDAP_BACK_F_CANCEL_ABANDON   (0x00000000U)
#define LDAP_BACK_F_CANCEL_IGNORE   (0x00002000U)
#define LDAP_BACK_F_CANCEL_EXOP   (0x00004000U)
#define LDAP_BACK_F_CANCEL_EXOP_DISCOVER   (0x00008000U)
#define LDAP_BACK_F_CANCEL_MASK   (LDAP_BACK_F_CANCEL_IGNORE|LDAP_BACK_F_CANCEL_EXOP)
#define LDAP_BACK_F_CANCEL_MASK2   (LDAP_BACK_F_CANCEL_MASK|LDAP_BACK_F_CANCEL_EXOP_DISCOVER)
#define LDAP_BACK_F_QUARANTINE   (0x00010000U)
#define LDAP_BACK_F_NOREFS   (0x00080000U)
#define LDAP_BACK_F_NOUNDEFFILTER   (0x00100000U)
#define LDAP_BACK_ISSET_F(ff, f)   ( ( (ff) & (f) ) == (f) )
#define LDAP_BACK_ISMASK_F(ff, m, f)   ( ( (ff) & (m) ) == (f) )
#define LDAP_BACK_ISSET(li, f)   LDAP_BACK_ISSET_F( (li)->li_flags, (f) )
#define LDAP_BACK_ISMASK(li, m, f)   LDAP_BACK_ISMASK_F( (li)->li_flags, (m), (f) )
#define LDAP_BACK_SAVECRED(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_SAVECRED )
#define LDAP_BACK_USE_TLS(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_USE_TLS )
#define LDAP_BACK_PROPAGATE_TLS(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_PROPAGATE_TLS )
#define LDAP_BACK_TLS_CRITICAL(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_TLS_CRITICAL )
#define LDAP_BACK_CHASE_REFERRALS(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_CHASE_REFERRALS )
#define LDAP_BACK_PROXY_WHOAMI(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_PROXY_WHOAMI )
#define LDAP_BACK_USE_TLS_F(ff)   LDAP_BACK_ISSET_F( (ff), LDAP_BACK_F_USE_TLS )
#define LDAP_BACK_PROPAGATE_TLS_F(ff)   LDAP_BACK_ISSET_F( (ff), LDAP_BACK_F_PROPAGATE_TLS )
#define LDAP_BACK_TLS_CRITICAL_F(ff)   LDAP_BACK_ISSET_F( (ff), LDAP_BACK_F_TLS_CRITICAL )
#define LDAP_BACK_T_F(li)   LDAP_BACK_ISMASK( (li), LDAP_BACK_F_T_F_MASK, LDAP_BACK_F_T_F )
#define LDAP_BACK_T_F_DISCOVER(li)   LDAP_BACK_ISMASK( (li), LDAP_BACK_F_T_F_MASK2, LDAP_BACK_F_T_F_DISCOVER )
#define LDAP_BACK_MONITOR(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_MONITOR )
#define LDAP_BACK_SINGLECONN(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_SINGLECONN )
#define LDAP_BACK_USE_TEMPORARIES(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_USE_TEMPORARIES)
#define LDAP_BACK_ISOPEN(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_ISOPEN )
#define LDAP_BACK_ABANDON(li)   LDAP_BACK_ISMASK( (li), LDAP_BACK_F_CANCEL_MASK, LDAP_BACK_F_CANCEL_ABANDON )
#define LDAP_BACK_IGNORE(li)   LDAP_BACK_ISMASK( (li), LDAP_BACK_F_CANCEL_MASK, LDAP_BACK_F_CANCEL_IGNORE )
#define LDAP_BACK_CANCEL(li)   LDAP_BACK_ISMASK( (li), LDAP_BACK_F_CANCEL_MASK, LDAP_BACK_F_CANCEL_EXOP )
#define LDAP_BACK_CANCEL_DISCOVER(li)   LDAP_BACK_ISMASK( (li), LDAP_BACK_F_CANCEL_MASK2, LDAP_BACK_F_CANCEL_EXOP_DISCOVER )
#define LDAP_BACK_QUARANTINE(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_QUARANTINE )
#define LDAP_BACK_NOREFS(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_NOREFS)
#define LDAP_BACK_NOUNDEFFILTER(li)   LDAP_BACK_ISSET( (li), LDAP_BACK_F_NOUNDEFFILTER)
#define LDAP_BACK_CONN_PRIV_MIN   (1)
#define LDAP_BACK_CONN_PRIV_MAX   (256)
#define LDAP_BACK_CONN_PRIV_DEFAULT   (16)
#define LDAP_BACK_FQ_NO   (0)
#define LDAP_BACK_FQ_YES   (1)
#define LDAP_BACK_FQ_RETRYING   (2)
#define LDAP_ERR_OK(err)   ((err) == LDAP_SUCCESS || (err) == LDAP_COMPARE_FALSE || (err) == LDAP_COMPARE_TRUE)
#define SLAP_STARTTLS_ASYNCHRONOUS
#define LDAP_BACK_RESULT_TIMEOUT   (0)
#define LDAP_BACK_RESULT_UTIMEOUT   (100000)
#define LDAP_BACK_TV_SET(tv)
#define LDAP_BACK_PRINT_CONNTREE   0

Typedefs

typedef struct ldap_monitor_info_t ldap_monitor_info_t
typedef struct ldapconn_base_t ldapconn_base_t
typedef struct ldapconn_t ldapconn_t
typedef struct ldap_avl_info_t ldap_avl_info_t
typedef struct slap_retry_info_t slap_retry_info_t
typedef struct slap_idassert_t slap_idassert_t
typedef int(* ldap_back_quarantine_f )(struct ldapinfo_t *, void *)
typedef struct ldapinfo_t ldapinfo_t
typedef enum ldap_back_send_t ldap_back_send_t
typedef struct ldap_extra_t ldap_extra_t

Enumerations

enum  {
  LDAP_BACK_PCONN_FIRST = 0, LDAP_BACK_PCONN_ROOTDN = LDAP_BACK_PCONN_FIRST, LDAP_BACK_PCONN_ANON = 2, LDAP_BACK_PCONN_BIND = 4,
  LDAP_BACK_PCONN_TLS = 0x1U, LDAP_BACK_PCONN_ROOTDN_TLS = (LDAP_BACK_PCONN_ROOTDN|LDAP_BACK_PCONN_TLS), LDAP_BACK_PCONN_ANON_TLS = (LDAP_BACK_PCONN_ANON|LDAP_BACK_PCONN_TLS), LDAP_BACK_PCONN_BIND_TLS = (LDAP_BACK_PCONN_BIND|LDAP_BACK_PCONN_TLS),
  LDAP_BACK_PCONN_LAST
}
enum  slap_idassert_mode_t {
  LDAP_BACK_IDASSERT_LEGACY = 1, LDAP_BACK_IDASSERT_NOASSERT, LDAP_BACK_IDASSERT_ANONYMOUS, LDAP_BACK_IDASSERT_SELF,
  LDAP_BACK_IDASSERT_OTHERDN, LDAP_BACK_IDASSERT_OTHERID
}
enum  ldap_back_send_t {
  LDAP_BACK_DONTSEND = 0x00, LDAP_BACK_SENDOK = 0x01, LDAP_BACK_SENDERR = 0x02, LDAP_BACK_SENDRESULT = (LDAP_BACK_SENDOK|LDAP_BACK_SENDERR),
  LDAP_BACK_BINDING = 0x04, LDAP_BACK_BIND_DONTSEND = (LDAP_BACK_BINDING), LDAP_BACK_BIND_SOK = (LDAP_BACK_BINDING|LDAP_BACK_SENDOK), LDAP_BACK_BIND_SERR = (LDAP_BACK_BINDING|LDAP_BACK_SENDERR),
  LDAP_BACK_BIND_SRES = (LDAP_BACK_BINDING|LDAP_BACK_SENDRESULT), LDAP_BACK_RETRYING = 0x08, LDAP_BACK_RETRY_DONTSEND = (LDAP_BACK_RETRYING), LDAP_BACK_RETRY_SOK = (LDAP_BACK_RETRYING|LDAP_BACK_SENDOK),
  LDAP_BACK_RETRY_SERR = (LDAP_BACK_RETRYING|LDAP_BACK_SENDERR), LDAP_BACK_RETRY_SRES = (LDAP_BACK_RETRYING|LDAP_BACK_SENDRESULT), LDAP_BACK_GETCONN = 0x10
}

Class Documentation

struct ldap_monitor_info_t

Definition at line 34 of file back-ldap.h.

Collaboration diagram for ldap_monitor_info_t:
Class Members
monitor_callback_t * lmi_cb
struct ldapinfo_t * lmi_li
monitor_subsys_t lmi_mss
int lmi_scope
struct ldapconn_base_t

Definition at line 64 of file back-ldap.h.

Collaboration diagram for ldapconn_base_t:
Class Members
Connection * lcb_conn
time_t lcb_create_time
unsigned lcb_refcnt
time_t lcb_time
struct ldap_avl_info_t

Definition at line 183 of file back-ldap.h.

Class Members
ldap_pvt_thread_mutex_t lai_mutex
Avlnode * lai_tree
struct slap_retry_info_t

Definition at line 188 of file back-ldap.h.

Class Members
int ri_count
int ri_idx
time_t * ri_interval
time_t ri_last
int * ri_num
struct slap_idassert_t

Definition at line 214 of file back-ldap.h.

Collaboration diagram for slap_idassert_t:
Class Members
BerVarray si_authz
slap_bindconf si_bc
unsigned si_flags
slap_idassert_mode_t si_mode
BerVarray si_passthru
struct ldapinfo_t

Definition at line 252 of file back-ldap.h.

Collaboration diagram for ldapinfo_t:
Class Members
slap_bindconf li_acl
BerVarray li_bvuri
struct ldapinfo_t li_conn_priv
int li_conn_priv_max
time_t li_conn_ttl
ldap_avl_info_t li_conninfo
unsigned li_flags
slap_idassert_t li_idassert
time_t li_idle_timeout
sig_atomic_t li_isquarantined
ldap_monitor_info_t li_monitor_info
time_t li_network_timeout
int li_nretries
slap_retry_info_t li_quarantine
ldap_back_quarantine_f li_quarantine_f
ldap_pvt_thread_mutex_t li_quarantine_mutex
void * li_quarantine_p
LDAP_REBIND_PROC * li_rebind_f
time_t li_timeout
slap_bindconf li_tls
char * li_uri
ldap_pvt_thread_mutex_t li_uri_mutex
int li_uri_mutex_do_not_lock
LDAP_URLLIST_PROC * li_urllist_f
void * li_urllist_p
int li_version
struct ldapinfo_t.li_conn_priv

Definition at line 382 of file back-ldap.h.

Class Members
int lic_num

Define Documentation

#define lc_conn   lc_base.lcb_conn

Definition at line 105 of file back-ldap.h.

#define lc_create_time   lc_base.lcb_create_time

Definition at line 108 of file back-ldap.h.

#define lc_local_ndn   lc_base.lcb_local_ndn

Definition at line 106 of file back-ldap.h.

#define lc_refcnt   lc_base.lcb_refcnt

Definition at line 107 of file back-ldap.h.

#define lc_time   lc_base.lcb_time

Definition at line 109 of file back-ldap.h.

Definition at line 362 of file back-ldap.h.

#define LDAP_BACK_AUTH_AUTHZ_ALL   (0x20U)

Definition at line 236 of file back-ldap.h.

#define LDAP_BACK_AUTH_NATIVE_AUTHZ   (0x01U)

Definition at line 231 of file back-ldap.h.

#define LDAP_BACK_AUTH_NONE   (0x00U)

Definition at line 230 of file back-ldap.h.

Definition at line 235 of file back-ldap.h.

Definition at line 234 of file back-ldap.h.

#define LDAP_BACK_AUTH_OVERRIDE   (0x02U)

Definition at line 232 of file back-ldap.h.

#define LDAP_BACK_AUTH_PRESCRIPTIVE   (0x04U)

Definition at line 233 of file back-ldap.h.

#define LDAP_BACK_AUTH_PROXYAUTHZ_CRITICAL   (0x40U)

Definition at line 237 of file back-ldap.h.

Definition at line 364 of file back-ldap.h.

Definition at line 365 of file back-ldap.h.

Definition at line 346 of file back-ldap.h.

#define LDAP_BACK_CONN2PRIV (   lc)    ((unsigned long)(lc)->lc_conn)

Definition at line 66 of file back-ldap.h.

Definition at line 166 of file back-ldap.h.

Definition at line 168 of file back-ldap.h.

Definition at line 167 of file back-ldap.h.

Definition at line 160 of file back-ldap.h.

Definition at line 162 of file back-ldap.h.

Definition at line 161 of file back-ldap.h.

Definition at line 173 of file back-ldap.h.

Definition at line 175 of file back-ldap.h.

Definition at line 174 of file back-ldap.h.

#define LDAP_BACK_CONN_CLEAR (   lc,
  f 
)    LDAP_BACK_CONN_CLEAR_F(&(lc)->lc_lcflags, (f))

Definition at line 128 of file back-ldap.h.

#define LDAP_BACK_CONN_CLEAR_F (   fp,
  f 
)    (*(fp) &= ~(f))

Definition at line 116 of file back-ldap.h.

#define LDAP_BACK_CONN_CPY (   lc,
  f,
  mlc 
)    LDAP_BACK_CONN_CPY_F(&(lc)->lc_lcflags, (f), &(mlc)->lc_lcflags)

Definition at line 129 of file back-ldap.h.

#define LDAP_BACK_CONN_CPY_F (   fp,
  f,
  mfp 
)
Value:
do { \
              if ( ((f) & *(mfp)) == (f) ) { \
                     *(fp) |= (f); \
              } else { \
                     *(fp) &= ~(f); \
              } \
       } while ( 0 )

Definition at line 117 of file back-ldap.h.

Definition at line 148 of file back-ldap.h.

Definition at line 150 of file back-ldap.h.

#define LDAP_BACK_CONN_ISANON_CPY (   lc,
  mlc 
)    LDAP_BACK_CONN_CPY((lc), LDAP_BACK_FCONN_ISANON, (mlc))

Definition at line 151 of file back-ldap.h.

Definition at line 149 of file back-ldap.h.

Definition at line 144 of file back-ldap.h.

Definition at line 146 of file back-ldap.h.

#define LDAP_BACK_CONN_ISBOUND_CPY (   lc,
  mlc 
)    LDAP_BACK_CONN_CPY((lc), LDAP_BACK_FCONN_ISBOUND, (mlc))

Definition at line 147 of file back-ldap.h.

Definition at line 145 of file back-ldap.h.

Definition at line 169 of file back-ldap.h.

Definition at line 171 of file back-ldap.h.

Definition at line 172 of file back-ldap.h.

Definition at line 170 of file back-ldap.h.

Definition at line 152 of file back-ldap.h.

Definition at line 154 of file back-ldap.h.

#define LDAP_BACK_CONN_ISPRIV_CPY (   lc,
  mlc 
)    LDAP_BACK_CONN_CPY((lc), LDAP_BACK_FCONN_ISPRIV, (mlc))

Definition at line 155 of file back-ldap.h.

Definition at line 153 of file back-ldap.h.

#define LDAP_BACK_CONN_ISSET (   lc,
  f 
)    LDAP_BACK_CONN_ISSET_F(&(lc)->lc_lcflags, (f))

Definition at line 126 of file back-ldap.h.

#define LDAP_BACK_CONN_ISSET_F (   fp,
  f 
)    (*(fp) & (f))

Definition at line 114 of file back-ldap.h.

Definition at line 156 of file back-ldap.h.

Definition at line 158 of file back-ldap.h.

#define LDAP_BACK_CONN_ISTLS_CPY (   lc,
  mlc 
)    LDAP_BACK_CONN_CPY((lc), LDAP_BACK_FCONN_ISTLS, (mlc))

Definition at line 159 of file back-ldap.h.

Definition at line 157 of file back-ldap.h.

#define LDAP_BACK_CONN_PRIV_DEFAULT   (16)

Definition at line 391 of file back-ldap.h.

#define LDAP_BACK_CONN_PRIV_MAX   (256)

Definition at line 388 of file back-ldap.h.

#define LDAP_BACK_CONN_PRIV_MIN   (1)

Definition at line 387 of file back-ldap.h.

#define LDAP_BACK_CONN_SET (   lc,
  f 
)    LDAP_BACK_CONN_SET_F(&(lc)->lc_lcflags, (f))

Definition at line 127 of file back-ldap.h.

#define LDAP_BACK_CONN_SET_F (   fp,
  f 
)    (*(fp) |= (f))

Definition at line 115 of file back-ldap.h.

Definition at line 163 of file back-ldap.h.

Definition at line 165 of file back-ldap.h.

Definition at line 164 of file back-ldap.h.

#define LDAP_BACK_F_CANCEL_ABANDON   (0x00000000U)

Definition at line 319 of file back-ldap.h.

#define LDAP_BACK_F_CANCEL_EXOP   (0x00004000U)

Definition at line 321 of file back-ldap.h.

#define LDAP_BACK_F_CANCEL_EXOP_DISCOVER   (0x00008000U)

Definition at line 322 of file back-ldap.h.

#define LDAP_BACK_F_CANCEL_IGNORE   (0x00002000U)

Definition at line 320 of file back-ldap.h.

Definition at line 323 of file back-ldap.h.

Definition at line 324 of file back-ldap.h.

#define LDAP_BACK_F_CHASE_REFERRALS   (0x00000020U)

Definition at line 305 of file back-ldap.h.

#define LDAP_BACK_F_ISOPEN   (0x00001000U)

Definition at line 317 of file back-ldap.h.

#define LDAP_BACK_F_MONITOR   (0x00000200U)

Definition at line 313 of file back-ldap.h.

#define LDAP_BACK_F_NONE   (0x00000000U)

Definition at line 295 of file back-ldap.h.

#define LDAP_BACK_F_NOREFS   (0x00080000U)

Definition at line 333 of file back-ldap.h.

#define LDAP_BACK_F_NOUNDEFFILTER   (0x00100000U)

Definition at line 334 of file back-ldap.h.

#define LDAP_BACK_F_PROPAGATE_TLS   (0x00000004U)

Definition at line 298 of file back-ldap.h.

#define LDAP_BACK_F_PROXY_WHOAMI   (0x00000040U)

Definition at line 306 of file back-ldap.h.

#define LDAP_BACK_F_QUARANTINE   (0x00010000U)

Definition at line 326 of file back-ldap.h.

#define LDAP_BACK_F_SAVECRED   (0x00000001U)

Definition at line 296 of file back-ldap.h.

#define LDAP_BACK_F_SINGLECONN   (0x00000400U)

Definition at line 314 of file back-ldap.h.

#define LDAP_BACK_F_T_F   (0x00000080U)

Definition at line 308 of file back-ldap.h.

#define LDAP_BACK_F_T_F_DISCOVER   (0x00000100U)

Definition at line 309 of file back-ldap.h.

Definition at line 310 of file back-ldap.h.

Definition at line 311 of file back-ldap.h.

#define LDAP_BACK_F_TLS_CRITICAL   (0x00000008U)

Definition at line 299 of file back-ldap.h.

#define LDAP_BACK_F_TLS_LDAPS   (0x00000010U)

Definition at line 300 of file back-ldap.h.

Definition at line 304 of file back-ldap.h.

Definition at line 303 of file back-ldap.h.

Definition at line 302 of file back-ldap.h.

#define LDAP_BACK_F_USE_TEMPORARIES   (0x00000800U)

Definition at line 315 of file back-ldap.h.

#define LDAP_BACK_F_USE_TLS   (0x00000002U)

Definition at line 297 of file back-ldap.h.

#define LDAP_BACK_FCONN_ABANDON   (0x00000040U)

Definition at line 140 of file back-ldap.h.

#define LDAP_BACK_FCONN_BINDING   (0x00000010U)

Definition at line 138 of file back-ldap.h.

#define LDAP_BACK_FCONN_CACHED   (0x00000100U)

Definition at line 142 of file back-ldap.h.

#define LDAP_BACK_FCONN_ISANON   (0x00000002U)

Definition at line 134 of file back-ldap.h.

Definition at line 135 of file back-ldap.h.

#define LDAP_BACK_FCONN_ISBOUND   (0x00000001U)

Definition at line 133 of file back-ldap.h.

#define LDAP_BACK_FCONN_ISIDASR   (0x00000080U)

Definition at line 141 of file back-ldap.h.

#define LDAP_BACK_FCONN_ISPRIV   (0x00000004U)

Definition at line 136 of file back-ldap.h.

#define LDAP_BACK_FCONN_ISTLS   (0x00000008U)

Definition at line 137 of file back-ldap.h.

#define LDAP_BACK_FCONN_TAINTED   (0x00000020U)

Definition at line 139 of file back-ldap.h.

#define LDAP_BACK_FQ_NO   (0)

Definition at line 396 of file back-ldap.h.

#define LDAP_BACK_FQ_RETRYING   (2)

Definition at line 398 of file back-ldap.h.

#define LDAP_BACK_FQ_YES   (1)

Definition at line 397 of file back-ldap.h.

Definition at line 363 of file back-ldap.h.

#define LDAP_BACK_ISMASK (   li,
  m,
  f 
)    LDAP_BACK_ISMASK_F( (li)->li_flags, (m), (f) )

Definition at line 340 of file back-ldap.h.

#define LDAP_BACK_ISMASK_F (   ff,
  m,
  f 
)    ( ( (ff) & (m) ) == (f) )

Definition at line 337 of file back-ldap.h.

#define LDAP_BACK_ISOPEN (   li)    LDAP_BACK_ISSET( (li), LDAP_BACK_F_ISOPEN )

Definition at line 360 of file back-ldap.h.

#define LDAP_BACK_ISSET (   li,
  f 
)    LDAP_BACK_ISSET_F( (li)->li_flags, (f) )

Definition at line 339 of file back-ldap.h.

#define LDAP_BACK_ISSET_F (   ff,
  f 
)    ( ( (ff) & (f) ) == (f) )

Definition at line 336 of file back-ldap.h.

#define LDAP_BACK_MONITOR (   li)    LDAP_BACK_ISSET( (li), LDAP_BACK_F_MONITOR )

Definition at line 356 of file back-ldap.h.

#define LDAP_BACK_NOREFS (   li)    LDAP_BACK_ISSET( (li), LDAP_BACK_F_NOREFS)

Definition at line 374 of file back-ldap.h.

Definition at line 375 of file back-ldap.h.

#define LDAP_BACK_PCONN_ANON_SET (   lc,
  op 
)    ((lc)->lc_conn = (void *)LDAP_BACK_PCONN_ANON)

Definition at line 88 of file back-ldap.h.

#define LDAP_BACK_PCONN_BIND_SET (   lc,
  op 
)    ((lc)->lc_conn = (void *)LDAP_BACK_PCONN_BIND)

Definition at line 90 of file back-ldap.h.

#define LDAP_BACK_PCONN_ISANON (   lc)
#define LDAP_BACK_PCONN_ISBIND (   lc)
Value:

Definition at line 74 of file back-ldap.h.

#define LDAP_BACK_PCONN_ISPRIV (   lc)
Value:
(((void *)(lc)->lc_conn) >= ((void *)LDAP_BACK_PCONN_FIRST) \
                                          && ((void *)(lc)->lc_conn) < ((void *)LDAP_BACK_PCONN_LAST))

Definition at line 67 of file back-ldap.h.

Value:

Definition at line 69 of file back-ldap.h.

#define LDAP_BACK_PCONN_ISTLS (   lc)
Value:

Definition at line 76 of file back-ldap.h.

#define LDAP_BACK_PCONN_ROOTDN_SET (   lc,
  op 
)    ((lc)->lc_conn = (void *)LDAP_BACK_PCONN_ROOTDN)

Definition at line 86 of file back-ldap.h.

#define LDAP_BACK_PCONN_SET (   lc,
  op 
)
Value:
(BER_BVISEMPTY(&(op)->o_ndn) ? \
              LDAP_BACK_PCONN_ANON_SET((lc), (op)) : LDAP_BACK_PCONN_ROOTDN_SET((lc), (op)))

Definition at line 93 of file back-ldap.h.

#define LDAP_BACK_PRINT_CONNTREE   0

Definition at line 447 of file back-ldap.h.

Definition at line 344 of file back-ldap.h.

Definition at line 350 of file back-ldap.h.

Definition at line 347 of file back-ldap.h.

Definition at line 367 of file back-ldap.h.

#define LDAP_BACK_RESULT_TIMEOUT   (0)

Definition at line 438 of file back-ldap.h.

#define LDAP_BACK_RESULT_UTIMEOUT   (100000)

Definition at line 439 of file back-ldap.h.

#define LDAP_BACK_RETRY_DEFAULT   (3)

Definition at line 289 of file back-ldap.h.

#define LDAP_BACK_RETRY_FOREVER   (-1)

Definition at line 287 of file back-ldap.h.

#define LDAP_BACK_RETRY_NEVER   (0)

Definition at line 288 of file back-ldap.h.

#define LDAP_BACK_RETRY_UNDEFINED   (-2)

Definition at line 286 of file back-ldap.h.

#define LDAP_BACK_SAVECRED (   li)    LDAP_BACK_ISSET( (li), LDAP_BACK_F_SAVECRED )

Definition at line 342 of file back-ldap.h.

Definition at line 357 of file back-ldap.h.

Definition at line 353 of file back-ldap.h.

Definition at line 354 of file back-ldap.h.

Definition at line 345 of file back-ldap.h.

Definition at line 351 of file back-ldap.h.

#define LDAP_BACK_TV_SET (   tv)
Value:
do { \
              (tv)->tv_sec = LDAP_BACK_RESULT_TIMEOUT; \
              (tv)->tv_usec = LDAP_BACK_RESULT_UTIMEOUT; \
       } while ( 0 )

Definition at line 440 of file back-ldap.h.

Definition at line 358 of file back-ldap.h.

#define LDAP_BACK_USE_TLS (   li)    LDAP_BACK_ISSET( (li), LDAP_BACK_F_USE_TLS )

Definition at line 343 of file back-ldap.h.

Definition at line 349 of file back-ldap.h.

#define LDAP_ERR_OK (   err)    ((err) == LDAP_SUCCESS || (err) == LDAP_COMPARE_FALSE || (err) == LDAP_COMPARE_TRUE)

Definition at line 411 of file back-ldap.h.

#define li_acl_authcDN   li_acl.sb_binddn

Definition at line 273 of file back-ldap.h.

#define li_acl_authcID   li_acl.sb_authcId

Definition at line 272 of file back-ldap.h.

#define li_acl_authmethod   li_acl.sb_method

Definition at line 276 of file back-ldap.h.

#define li_acl_authzID   li_acl.sb_authzId

Definition at line 275 of file back-ldap.h.

#define li_acl_passwd   li_acl.sb_cred

Definition at line 274 of file back-ldap.h.

#define li_acl_sasl_mech   li_acl.sb_saslmech

Definition at line 277 of file back-ldap.h.

#define li_acl_sasl_realm   li_acl.sb_realm

Definition at line 278 of file back-ldap.h.

#define li_acl_secprops   li_acl.sb_secprops

Definition at line 279 of file back-ldap.h.

#define li_idassert_authcDN   li_idassert.si_bc.sb_binddn

Definition at line 220 of file back-ldap.h.

#define li_idassert_authcID   li_idassert.si_bc.sb_authcId

Definition at line 219 of file back-ldap.h.

#define li_idassert_authmethod   li_idassert.si_bc.sb_method

Definition at line 223 of file back-ldap.h.

#define li_idassert_authz   li_idassert.si_authz

Definition at line 241 of file back-ldap.h.

#define li_idassert_authzID   li_idassert.si_bc.sb_authzId

Definition at line 222 of file back-ldap.h.

#define li_idassert_flags   li_idassert.si_flags

Definition at line 238 of file back-ldap.h.

#define li_idassert_mode   li_idassert.si_mode

Definition at line 216 of file back-ldap.h.

#define li_idassert_passthru   li_idassert.si_passthru

Definition at line 244 of file back-ldap.h.

#define li_idassert_passwd   li_idassert.si_bc.sb_cred

Definition at line 221 of file back-ldap.h.

#define li_idassert_sasl_mech   li_idassert.si_bc.sb_saslmech

Definition at line 224 of file back-ldap.h.

#define li_idassert_sasl_realm   li_idassert.si_bc.sb_realm

Definition at line 225 of file back-ldap.h.

#define li_idassert_secprops   li_idassert.si_bc.sb_secprops

Definition at line 226 of file back-ldap.h.

#define li_idassert_tls   li_idassert.si_bc.sb_tls

Definition at line 227 of file back-ldap.h.

#define SLAP_RETRYNUM_FINITE (   n)    ((n) > SLAP_RETRYNUM_FOREVER) /* not forever */

Definition at line 198 of file back-ldap.h.

#define SLAP_RETRYNUM_FOREVER   (-1) /* retry forever */

Definition at line 195 of file back-ldap.h.

#define SLAP_RETRYNUM_TAIL   (-2) /* end of retrynum array */

Definition at line 196 of file back-ldap.h.

#define SLAP_RETRYNUM_VALID (   n)    ((n) >= SLAP_RETRYNUM_FOREVER) /* valid retrynum */

Definition at line 197 of file back-ldap.h.

Definition at line 435 of file back-ldap.h.


Typedef Documentation

typedef int(* ldap_back_quarantine_f)(struct ldapinfo_t *, void *)

Definition at line 250 of file back-ldap.h.

typedef struct ldap_extra_t ldap_extra_t
typedef struct ldapconn_t ldapconn_t
typedef struct ldapinfo_t ldapinfo_t

Enumeration Type Documentation

anonymous enum
Enumerator:
LDAP_BACK_PCONN_FIRST 
LDAP_BACK_PCONN_ROOTDN 
LDAP_BACK_PCONN_ANON 
LDAP_BACK_PCONN_BIND 
LDAP_BACK_PCONN_TLS 
LDAP_BACK_PCONN_ROOTDN_TLS 
LDAP_BACK_PCONN_ANON_TLS 
LDAP_BACK_PCONN_BIND_TLS 
LDAP_BACK_PCONN_LAST 

Definition at line 47 of file back-ldap.h.

Enumerator:
LDAP_BACK_DONTSEND 
LDAP_BACK_SENDOK 
LDAP_BACK_SENDERR 
LDAP_BACK_SENDRESULT 
LDAP_BACK_BINDING 
LDAP_BACK_BIND_DONTSEND 
LDAP_BACK_BIND_SOK 
LDAP_BACK_BIND_SERR 
LDAP_BACK_BIND_SRES 
LDAP_BACK_RETRYING 
LDAP_BACK_RETRY_DONTSEND 
LDAP_BACK_RETRY_SOK 
LDAP_BACK_RETRY_SERR 
LDAP_BACK_RETRY_SRES 
LDAP_BACK_GETCONN 

Definition at line 413 of file back-ldap.h.

Enumerator:
LDAP_BACK_IDASSERT_LEGACY 
LDAP_BACK_IDASSERT_NOASSERT 
LDAP_BACK_IDASSERT_ANONYMOUS 
LDAP_BACK_IDASSERT_SELF 
LDAP_BACK_IDASSERT_OTHERDN 
LDAP_BACK_IDASSERT_OTHERID 

Definition at line 204 of file back-ldap.h.