Grammar change in the license declaration.
[citadel.git] / citadel / server / database.h
1 // Copyright (c) 1987-2023 by the citadel.org team
2 // This program is open source software.  Use, duplication, or disclosure
3 // is subject to the terms of the GNU General Public License, version 3.
4
5 // These functions comprise an interface between Citadel Server and a database backend.
6
7 #ifndef DATABASE_H
8 #define DATABASE_H
9
10 extern void             cdb_init_backends(void);
11 extern void             cdb_chmod_data(void);
12
13 extern void             (*cdb_open_databases)(void);
14 extern void             (*cdb_close_databases)(void);
15 extern int              (*cdb_store)(int, const void *, int, void *, int);
16 extern int              (*cdb_delete)(int, void *, int);
17 extern struct cdbkeyval (*cdb_next_item)(int);
18 extern void             (*cdb_close_cursor)(int);
19 extern void             (*cdb_begin_transaction)(void);
20 extern void             (*cdb_end_transaction)(void);
21 extern void             (*cdb_check_handles)(void);
22 extern void             (*cdb_trunc)(int);
23 extern void             (*check_handles)(void *);
24 extern struct cdbdata   (*cdb_fetch)(int, const void *, int);
25 extern void             (*cdb_checkpoint)(void);
26 extern void             (*cdb_compact)(void);
27 extern void             (*cdb_rewind)(int);
28 extern void             (*cdb_tick)(void);
29
30 #endif