2004-11-11 08:39:19 +08:00
|
|
|
/* $OpenLDAP$ */
|
|
|
|
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
|
|
|
*
|
2006-01-04 07:11:52 +08:00
|
|
|
* Copyright 2003-2006 The OpenLDAP Foundation.
|
2004-11-11 08:39:19 +08:00
|
|
|
* All rights reserved.
|
|
|
|
*
|
|
|
|
* Redistribution and use in source and binary forms, with or without
|
|
|
|
* modification, are permitted only as authorized by the OpenLDAP
|
|
|
|
* Public License.
|
|
|
|
*
|
|
|
|
* A copy of this license is available in the file LICENSE in the
|
|
|
|
* top-level directory of the distribution or, alternatively, at
|
|
|
|
* <http://www.OpenLDAP.org/license.html>.
|
|
|
|
*/
|
|
|
|
/* ACKNOWLEDGEMENTS:
|
|
|
|
* This work was initially developed by the Howard Chu for inclusion
|
|
|
|
* in OpenLDAP Software and subsequently enhanced by Pierangelo
|
|
|
|
* Masarati.
|
|
|
|
*/
|
|
|
|
|
2004-11-14 02:40:16 +08:00
|
|
|
#ifndef PROTO_LDAP_H
|
|
|
|
#define PROTO_LDAP_H
|
2004-11-11 08:39:19 +08:00
|
|
|
|
|
|
|
LDAP_BEGIN_DECL
|
|
|
|
|
2004-11-16 03:45:49 +08:00
|
|
|
extern BI_init ldap_back_initialize;
|
|
|
|
|
2004-11-11 08:39:19 +08:00
|
|
|
extern BI_open ldap_back_open;
|
|
|
|
extern BI_close ldap_back_close;
|
|
|
|
extern BI_destroy ldap_back_destroy;
|
|
|
|
|
|
|
|
extern BI_db_init ldap_back_db_init;
|
|
|
|
extern BI_db_open ldap_back_db_open;
|
|
|
|
extern BI_db_destroy ldap_back_db_destroy;
|
|
|
|
|
|
|
|
extern BI_op_bind ldap_back_bind;
|
|
|
|
extern BI_op_search ldap_back_search;
|
|
|
|
extern BI_op_compare ldap_back_compare;
|
|
|
|
extern BI_op_modify ldap_back_modify;
|
|
|
|
extern BI_op_modrdn ldap_back_modrdn;
|
|
|
|
extern BI_op_add ldap_back_add;
|
|
|
|
extern BI_op_delete ldap_back_delete;
|
|
|
|
extern BI_op_abandon ldap_back_abandon;
|
|
|
|
extern BI_op_extended ldap_back_extended;
|
|
|
|
|
|
|
|
extern BI_connection_destroy ldap_back_conn_destroy;
|
|
|
|
|
|
|
|
extern BI_entry_get_rw ldap_back_entry_get;
|
|
|
|
|
2005-11-19 23:00:50 +08:00
|
|
|
int ldap_back_freeconn( Operation *op, ldapconn_t *lc, int dolock );
|
|
|
|
ldapconn_t *ldap_back_getconn( Operation *op, SlapReply *rs, ldap_back_send_t sendok );
|
2006-01-11 20:11:59 +08:00
|
|
|
void ldap_back_release_conn_lock( Operation *op, SlapReply *rs, ldapconn_t *lc, int dolock );
|
|
|
|
#define ldap_back_release_conn(op, rs, lc) ldap_back_release_conn_lock((op), (rs), (lc), 1)
|
2005-11-19 23:00:50 +08:00
|
|
|
int ldap_back_dobind( ldapconn_t *lc, Operation *op, SlapReply *rs, ldap_back_send_t sendok );
|
|
|
|
int ldap_back_retry( ldapconn_t **lcp, Operation *op, SlapReply *rs, ldap_back_send_t sendok );
|
|
|
|
int ldap_back_map_result( SlapReply *rs );
|
|
|
|
int ldap_back_op_result( ldapconn_t *lc, Operation *op, SlapReply *rs,
|
|
|
|
ber_int_t msgid, time_t timeout, ldap_back_send_t sendok );
|
2006-05-20 22:29:01 +08:00
|
|
|
int ldap_back_cancel( ldapconn_t *lc, Operation *op, SlapReply *rs, ber_int_t msgid, ldap_back_send_t sendok );
|
2005-01-20 17:04:37 +08:00
|
|
|
|
2005-07-17 20:06:09 +08:00
|
|
|
int ldap_back_init_cf( BackendInfo *bi );
|
|
|
|
|
2006-02-07 05:39:56 +08:00
|
|
|
extern int ldap_back_conndn_cmp( const void *c1, const void *c2);
|
2005-01-20 17:04:37 +08:00
|
|
|
extern int ldap_back_conn_cmp( const void *c1, const void *c2);
|
2006-02-07 05:39:56 +08:00
|
|
|
extern int ldap_back_conndn_dup( void *c1, void *c2 );
|
2005-01-20 17:04:37 +08:00
|
|
|
extern void ldap_back_conn_free( void *c );
|
|
|
|
|
|
|
|
extern int
|
|
|
|
ldap_back_proxy_authz_ctrl(
|
2006-06-11 00:33:26 +08:00
|
|
|
struct berval *bound_ndn,
|
2006-06-16 07:12:38 +08:00
|
|
|
int version,
|
|
|
|
slap_idassert_t *si,
|
2005-01-20 17:04:37 +08:00
|
|
|
Operation *op,
|
|
|
|
SlapReply *rs,
|
|
|
|
LDAPControl ***pctrls );
|
|
|
|
|
|
|
|
extern int
|
|
|
|
ldap_back_proxy_authz_ctrl_free(
|
|
|
|
Operation *op,
|
|
|
|
LDAPControl ***pctrls );
|
|
|
|
|
2006-05-28 03:54:27 +08:00
|
|
|
extern void
|
|
|
|
ldap_back_quarantine(
|
|
|
|
Operation *op,
|
2006-06-08 07:25:38 +08:00
|
|
|
SlapReply *rs );
|
2006-05-28 03:54:27 +08:00
|
|
|
|
|
|
|
extern void slap_retry_info_destroy( slap_retry_info_t *ri );
|
|
|
|
extern int slap_retry_info_parse( char *in, slap_retry_info_t *ri,
|
|
|
|
char *buf, ber_len_t buflen );
|
|
|
|
extern int slap_retry_info_unparse( slap_retry_info_t *ri, struct berval *bvout );
|
|
|
|
|
2006-06-16 07:12:38 +08:00
|
|
|
extern int slap_idassert_authzfrom_parse_cf( const char *fname, int lineno, const char *arg, slap_idassert_t *si );
|
|
|
|
extern int slap_idassert_parse_cf( const char *fname, int lineno, int argc, char *argv[], slap_idassert_t *si );
|
2006-05-28 03:54:27 +08:00
|
|
|
|
2005-11-28 07:23:59 +08:00
|
|
|
extern int chain_initialize( void );
|
|
|
|
#ifdef LDAP_DEVEL
|
|
|
|
extern int distproc_initialize( void );
|
|
|
|
#endif
|
2005-01-20 17:04:37 +08:00
|
|
|
|
2006-05-07 00:15:25 +08:00
|
|
|
extern LDAP_REBIND_PROC ldap_back_default_rebind;
|
|
|
|
extern LDAP_URLLIST_PROC ldap_back_default_urllist;
|
2005-09-25 02:39:26 +08:00
|
|
|
|
2004-11-11 08:39:19 +08:00
|
|
|
LDAP_END_DECL
|
|
|
|
|
2004-11-14 02:40:16 +08:00
|
|
|
#endif /* PROTO_LDAP_H */
|