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 ));
16 extern int ldbm_back_config LDAP_P(( BackendInfo *bi,
17 const char *fname, int lineno,
18 int argc, char **argv ));
20 extern int ldbm_back_db_init LDAP_P(( BackendDB *bd ));
21 extern int ldbm_back_db_open LDAP_P(( BackendDB *bd ));
22 extern int ldbm_back_db_close LDAP_P(( BackendDB *bd ));
23 extern int ldbm_back_db_destroy LDAP_P(( BackendDB *bd ));
25 extern int ldbm_back_db_config LDAP_P(( BackendDB *bd,
26 const char *fname, int lineno,
27 int argc, char **argv ));
29 extern int ldbm_back_extended LDAP_P(( BackendDB *bd,
30 Connection *conn, Operation *op,
32 struct berval *reqdata,
34 struct berval **rspdata,
35 LDAPControl *** rspctrls,
37 struct berval *** refs ));
39 extern int ldbm_back_bind LDAP_P(( BackendDB *bd,
40 Connection *conn, Operation *op,
41 const char *dn, const char *ndn, int method,
42 struct berval *cred, char** edn ));
44 extern int ldbm_back_unbind LDAP_P(( BackendDB *bd,
45 Connection *conn, Operation *op ));
47 extern int ldbm_back_search LDAP_P(( BackendDB *bd,
48 Connection *conn, Operation *op,
49 const char *base, const char *nbase,
50 int scope, int deref, int sizelimit, int timelimit,
51 Filter *filter, const char *filterstr,
52 char **attrs, int attrsonly ));
54 extern int ldbm_back_compare LDAP_P(( BackendDB *bd,
55 Connection *conn, Operation *op,
56 const char *dn, const char *ndn,
57 AttributeAssertion *ava ));
59 extern int ldbm_back_modify LDAP_P(( BackendDB *bd,
60 Connection *conn, Operation *op,
61 const char *dn, const char *ndn, Modifications *ml ));
63 extern int ldbm_back_modrdn LDAP_P(( BackendDB *bd,
64 Connection *conn, Operation *op,
65 const char *dn, const char *ndn,
66 const char* newrdn, int deleteoldrdn,
67 const char *newSuperior ));
69 extern int ldbm_back_add LDAP_P(( BackendDB *bd,
70 Connection *conn, Operation *op, Entry *e ));
72 extern int ldbm_back_delete LDAP_P(( BackendDB *bd,
73 Connection *conn, Operation *op,
74 const char *dn, const char *ndn ));
76 extern int ldbm_back_abandon LDAP_P(( BackendDB *bd,
77 Connection *conn, Operation *op, ber_int_t msgid ));
79 extern int ldbm_back_group LDAP_P(( BackendDB *bd,
80 Connection *conn, Operation *op,
84 ObjectClass* group_oc,
85 AttributeDescription* group_at));
87 extern int ldbm_back_attribute LDAP_P(( BackendDB *bd,
88 Connection *conn, Operation *op,
91 AttributeDescription* entry_at,
92 struct berval ***vals));
95 /* hooks for slap tools */
96 extern int ldbm_tool_entry_open LDAP_P(( BackendDB *be, int mode ));
97 extern int ldbm_tool_entry_close LDAP_P(( BackendDB *be ));
98 extern ID ldbm_tool_entry_first LDAP_P(( BackendDB *be ));
99 extern ID ldbm_tool_entry_next LDAP_P(( BackendDB *be ));
100 extern Entry* ldbm_tool_entry_get LDAP_P(( BackendDB *be, ID id ));
101 extern ID ldbm_tool_entry_put LDAP_P(( BackendDB *be, Entry *e ));
103 extern int ldbm_tool_entry_reindex LDAP_P(( BackendDB *be, ID id ));
104 extern int ldbm_tool_sync LDAP_P(( BackendDB *be ));
106 extern int ldbm_back_referrals LDAP_P(( BackendDB *bd,
107 Connection *conn, Operation *op,
108 const char *dn, const char *ndn,
109 const char **text ));
113 #endif /* _LDBM_EXTERNAL_H */