]> git.sur5r.net Git - openldap/blob - servers/slapd/back-ldbm/proto-back-ldbm.h
include portable.h
[openldap] / servers / slapd / back-ldbm / proto-back-ldbm.h
1 #ifndef _PROTO_BACK_LDBM
2 #define _PROTO_BACK_LDBM
3
4 #include <ldap_cdefs.h>
5
6 LDAP_BEGIN_DECL
7
8 /*
9  * attr.c
10  */
11
12 void attr_masks LDAP_P(( struct ldbminfo *li, char *type, int *indexmask,
13  int *syntaxmask ));
14 void attr_index_config LDAP_P(( struct ldbminfo *li, char *fname, int lineno,
15  int argc, char **argv, int init ));
16
17 /*
18  * cache.c
19  */
20
21 void cache_set_state LDAP_P(( struct cache *cache, Entry *e, int state ));
22 void cache_return_entry_r LDAP_P(( struct cache *cache, Entry *e ));
23 void cache_return_entry_w LDAP_P(( struct cache *cache, Entry *e ));
24 int cache_add_entry_lock LDAP_P(( struct cache *cache, Entry *e, int state ));
25 ID cache_find_entry_dn2id LDAP_P(( Backend *be, struct cache *cache, char *dn ));
26 Entry * cache_find_entry_id LDAP_P(( struct cache *cache, ID id, int rw ));
27 int cache_delete_entry LDAP_P(( struct cache *cache, Entry *e ));
28
29 /*
30  * dbcache.c
31  */
32
33 struct dbcache * ldbm_cache_open LDAP_P(( Backend *be, char *name, char *suffix,
34  int flags ));
35 void ldbm_cache_close LDAP_P(( Backend *be, struct dbcache *db ));
36 void ldbm_cache_flush_all LDAP_P(( Backend *be ));
37 Datum ldbm_cache_fetch LDAP_P(( struct dbcache *db, Datum key ));
38 int ldbm_cache_store LDAP_P(( struct dbcache *db, Datum key, Datum data, int flags ));
39 int ldbm_cache_delete LDAP_P(( struct dbcache *db, Datum key ));
40
41 /*
42  * dn2id.c
43  */
44
45 int dn2id_add LDAP_P(( Backend *be, char *dn, ID id ));
46 ID dn2id LDAP_P(( Backend *be, char *dn ));
47 int dn2id_delete LDAP_P(( Backend *be, char *dn ));
48 /*Entry * dn2entry LDAP_P(( Backend *be, char *dn, char **matched ));*/
49 Entry * dn2entry_r LDAP_P(( Backend *be, char *dn, char **matched ));
50 Entry * dn2entry_w LDAP_P(( Backend *be, char *dn, char **matched ));
51
52 /*
53  * filterindex.c
54  */
55
56 IDList * filter_candidates LDAP_P(( Backend *be, Filter *f ));
57
58 /*
59  * id2children.c
60  */
61
62 int id2children_add LDAP_P(( Backend *be, Entry *p, Entry *e ));
63 int has_children LDAP_P(( Backend *be, Entry *p ));
64
65 /*
66  * id2entry.c
67  */
68
69 int id2entry_add LDAP_P(( Backend *be, Entry *e ));
70 int id2entry_delete LDAP_P(( Backend *be, Entry *e ));
71 Entry * id2entry LDAP_P(( Backend *be, ID id, int rw )); 
72 Entry * id2entry_r LDAP_P(( Backend *be, ID id ));
73 Entry * id2entry_w LDAP_P(( Backend *be, ID id ));
74
75 /*
76  * idl.c
77  */
78
79 IDList * idl_alloc LDAP_P(( int nids ));
80 IDList * idl_allids LDAP_P(( Backend *be ));
81 void idl_free LDAP_P(( IDList *idl ));
82 IDList * idl_fetch LDAP_P(( Backend *be, struct dbcache *db, Datum key ));
83 int idl_insert_key LDAP_P(( Backend *be, struct dbcache *db, Datum key, ID id ));
84 int idl_insert LDAP_P(( IDList **idl, ID id, int maxids ));
85 IDList * idl_intersection LDAP_P(( Backend *be, IDList *a, IDList *b ));
86 IDList * idl_union LDAP_P(( Backend *be, IDList *a, IDList *b ));
87 IDList * idl_notin LDAP_P(( Backend *be, IDList *a, IDList *b ));
88 ID idl_firstid LDAP_P(( IDList *idl ));
89 ID idl_nextid LDAP_P(( IDList *idl, ID id ));
90
91 /*
92  * index.c
93  */
94
95 int index_add_entry LDAP_P(( Backend *be, Entry *e ));
96 int index_add_mods LDAP_P(( Backend *be, LDAPMod *mods, ID id ));
97 IDList * index_read LDAP_P(( Backend *be, char *type, int indextype, char *val ));
98 int index_add_values LDAP_P(( Backend *be, char *type, struct berval **vals, ID  id ));
99
100 /*
101  * kerberos.c
102  */
103
104 #ifdef HAVE_KERBEROS
105 /* krbv4_ldap_auth LDAP_P(( Backend *be, struct berval *cred, AUTH_DAT *ad )); */
106 #endif
107
108 /*
109  * nextid.c
110  */
111
112 ID next_id LDAP_P(( Backend *be ));
113 void next_id_return LDAP_P(( Backend *be, ID id ));
114 ID next_id_get LDAP_P(( Backend *be ));
115
116 LDAP_END_DECL
117 #endif