3 * Copyright 1998-2000 The OpenLDAP Foundation, All Rights Reserved.
4 * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
7 #ifndef _LDBM_EXTERNAL_H
8 #define _LDBM_EXTERNAL_H
12 extern int ldbm_back_initialize LDAP_P(( BackendInfo *bi ));
13 extern int ldbm_back_open LDAP_P(( BackendInfo *bi ));
14 extern int ldbm_back_close LDAP_P(( BackendInfo *bi ));
15 extern int ldbm_back_destroy LDAP_P(( BackendInfo *bi ));
17 extern int ldbm_back_db_init LDAP_P(( BackendDB *bd ));
18 extern int ldbm_back_db_open LDAP_P(( BackendDB *bd ));
19 extern int ldbm_back_db_close LDAP_P(( BackendDB *bd ));
20 extern int ldbm_back_db_destroy LDAP_P(( BackendDB *bd ));
22 extern int ldbm_back_db_config LDAP_P(( BackendDB *bd,
23 const char *fname, int lineno,
24 int argc, char **argv ));
26 extern int ldbm_back_extended LDAP_P(( BackendDB *bd,
27 Connection *conn, Operation *op,
29 struct berval *reqdata,
31 struct berval **rspdata,
32 LDAPControl *** rspctrls,
34 struct berval *** refs ));
36 extern int ldbm_back_bind LDAP_P(( BackendDB *bd,
37 Connection *conn, Operation *op,
38 const char *dn, const char *ndn, int method,
39 struct berval *cred, char** edn ));
41 extern int ldbm_back_unbind LDAP_P(( BackendDB *bd,
42 Connection *conn, Operation *op ));
44 extern int ldbm_back_search LDAP_P(( BackendDB *bd,
45 Connection *conn, Operation *op,
46 const char *base, const char *nbase,
47 int scope, int deref, int sizelimit, int timelimit,
48 Filter *filter, const char *filterstr,
49 char **attrs, int attrsonly ));
51 extern int ldbm_back_compare LDAP_P(( BackendDB *bd,
52 Connection *conn, Operation *op,
53 const char *dn, const char *ndn,
54 AttributeAssertion *ava ));
56 extern int ldbm_back_modify LDAP_P(( BackendDB *bd,
57 Connection *conn, Operation *op,
58 const char *dn, const char *ndn, Modifications *ml ));
60 extern int ldbm_back_modrdn LDAP_P(( BackendDB *bd,
61 Connection *conn, Operation *op,
62 const char *dn, const char *ndn,
63 const char* newrdn, int deleteoldrdn,
64 const char *newSuperior ));
66 extern int ldbm_back_add LDAP_P(( BackendDB *bd,
67 Connection *conn, Operation *op, Entry *e ));
69 extern int ldbm_back_delete LDAP_P(( BackendDB *bd,
70 Connection *conn, Operation *op,
71 const char *dn, const char *ndn ));
73 extern int ldbm_back_abandon LDAP_P(( BackendDB *bd,
74 Connection *conn, Operation *op, ber_int_t msgid ));
76 extern int ldbm_back_group LDAP_P(( BackendDB *bd,
77 Connection *conn, Operation *op,
81 ObjectClass* group_oc,
82 AttributeDescription* group_at));
84 extern int ldbm_back_attribute LDAP_P(( BackendDB *bd,
85 Connection *conn, Operation *op,
88 AttributeDescription* entry_at,
89 struct berval ***vals));
92 /* hooks for slap tools */
93 extern int ldbm_tool_entry_open LDAP_P(( BackendDB *be, int mode ));
94 extern int ldbm_tool_entry_close LDAP_P(( BackendDB *be ));
95 extern ID ldbm_tool_entry_first LDAP_P(( BackendDB *be ));
96 extern ID ldbm_tool_entry_next LDAP_P(( BackendDB *be ));
97 extern Entry* ldbm_tool_entry_get LDAP_P(( BackendDB *be, ID id ));
98 extern ID ldbm_tool_entry_put LDAP_P(( BackendDB *be, Entry *e ));
100 extern int ldbm_tool_entry_reindex LDAP_P(( BackendDB *be, ID id ));
101 extern int ldbm_tool_sync LDAP_P(( BackendDB *be ));
103 extern int ldbm_back_referrals LDAP_P(( BackendDB *bd,
104 Connection *conn, Operation *op,
105 const char *dn, const char *ndn,
106 const char **text ));
110 #endif /* _LDBM_EXTERNAL_H */