| 1 | /************************************************* |
| 2 | * Exim - an Internet mail transport agent * |
| 3 | *************************************************/ |
| 4 | |
| 5 | /* Copyright (c) University of Cambridge 1995 - 2009 */ |
| 6 | /* See the file NOTICE for conditions of use and distribution. */ |
| 7 | |
| 8 | |
| 9 | /* Functions for reading/writing exim database files */ |
| 10 | |
| 11 | void dbfn_close(open_db *); |
| 12 | int dbfn_delete(open_db *, uschar *); |
| 13 | open_db *dbfn_open(uschar *, int, open_db *, BOOL); |
| 14 | void *dbfn_read_with_length(open_db *, uschar *, int *); |
| 15 | uschar *dbfn_scan(open_db *, BOOL, EXIM_CURSOR **); |
| 16 | int dbfn_write(open_db *, uschar *, void *, int); |
| 17 | |
| 18 | /* Macro for the common call to read without wanting to know the length. */ |
| 19 | |
| 20 | #define dbfn_read(a, b) dbfn_read_with_length(a, b, NULL) |
| 21 | |
| 22 | /* Berkeley DB uses a callback function to pass back error details. Its API |
| 23 | changed at release 4.3. */ |
| 24 | |
| 25 | #if defined(USE_DB) && defined(DB_VERSION_STRING) |
| 26 | #if DB_VERSION_MAJOR > 4 || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 3) |
| 27 | void dbfn_bdb_error_callback(const DB_ENV *, const char *, const char *); |
| 28 | #else |
| 29 | void dbfn_bdb_error_callback(const char *, char *); |
| 30 | #endif |
| 31 | #endif |
| 32 | |
| 33 | /* End of dbfunctions.h */ |