]> git.sur5r.net Git - openldap/blob - servers/slapd/back-ldbm/external.h
Backout directory config option
[openldap] / servers / slapd / back-ldbm / external.h
1 /* $OpenLDAP$ */
2 /*
3  * Copyright 1998-2000 The OpenLDAP Foundation, All Rights Reserved.
4  * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
5  */
6
7 #ifndef _LDBM_EXTERNAL_H
8 #define _LDBM_EXTERNAL_H
9
10 LDAP_BEGIN_DECL
11
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
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 ));
21
22 extern int      ldbm_back_db_config LDAP_P(( BackendDB *bd,
23         const char *fname, int lineno,
24         int argc, char **argv ));
25
26 extern int ldbm_back_extended LDAP_P(( BackendDB *bd,
27         Connection *conn, Operation *op,
28         const char *reqoid,
29         struct berval *reqdata,
30         char **rspoid,
31         struct berval **rspdata,
32         LDAPControl *** rspctrls,
33         const char **text,
34         struct berval *** refs ));
35
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 ));
40
41 extern int      ldbm_back_unbind LDAP_P(( BackendDB *bd,
42         Connection *conn, Operation *op ));
43
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 ));
50
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 ));
55
56 extern int      ldbm_back_modify LDAP_P(( BackendDB *bd,
57         Connection *conn, Operation *op,
58         const char *dn, const char *ndn, Modifications *ml ));
59
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 ));
65
66 extern int      ldbm_back_add LDAP_P(( BackendDB *bd,
67         Connection *conn, Operation *op, Entry *e ));
68
69 extern int      ldbm_back_delete LDAP_P(( BackendDB *bd,
70         Connection *conn, Operation *op,
71         const char *dn, const char *ndn ));
72
73 extern int      ldbm_back_abandon LDAP_P(( BackendDB *bd,
74         Connection *conn, Operation *op, ber_int_t msgid ));
75
76 extern int      ldbm_back_group LDAP_P(( BackendDB *bd,
77         Connection *conn, Operation *op,
78         Entry *target,
79         const char* gr_ndn,
80         const char* op_ndn,
81         ObjectClass* group_oc,
82         AttributeDescription* group_at));
83
84 extern int      ldbm_back_attribute LDAP_P(( BackendDB *bd,
85         Connection *conn, Operation *op,
86         Entry *target,
87         const char* e_ndn,
88         AttributeDescription* entry_at,
89         struct berval ***vals));
90
91
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 ));
99
100 extern int ldbm_tool_entry_reindex LDAP_P(( BackendDB *be, ID id ));
101 extern int ldbm_tool_sync LDAP_P(( BackendDB *be ));
102
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 ));
107
108 LDAP_END_DECL
109
110 #endif /* _LDBM_EXTERNAL_H */
111