X-Git-Url: https://vcs.fsf.org/?p=exim.git;a=blobdiff_plain;f=src%2Fsrc%2Flookups%2Flmdb.c;h=712261a413a50bde976ccad165885e73ebf71cf8;hp=a6888d5a9923166ac62993b6bad05e3eba8757aa;hb=d447dbd160a0fb503ed1e763f3f23d28744b6ddd;hpb=a3382e87b497c0977e0aa852da6cb238f06e1e18 diff --git a/src/src/lookups/lmdb.c b/src/src/lookups/lmdb.c index a6888d5a9..712261a41 100644 --- a/src/src/lookups/lmdb.c +++ b/src/src/lookups/lmdb.c @@ -2,7 +2,7 @@ * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) University of Cambridge 2016 */ +/* Copyright (c) University of Cambridge 2016 - 2018*/ /* See the file NOTICE for conditions of use and distribution. */ #include "../exim.h" @@ -23,14 +23,14 @@ MDB_dbi db_dbi; *************************************************/ static void * -lmdb_open(uschar * filename, uschar ** errmsg) +lmdb_open(const uschar * filename, uschar ** errmsg) { MDB_env * db_env = NULL; Lmdbstrct * lmdb_p; int ret, save_errno; const uschar * errstr; -lmdb_p = store_get(sizeof(Lmdbstrct)); +lmdb_p = store_get(sizeof(Lmdbstrct), FALSE); lmdb_p->txn = NULL; if ((ret = mdb_env_create(&db_env))) @@ -74,7 +74,7 @@ bad: *************************************************/ static int -lmdb_find(void * handle, uschar * filename, +lmdb_find(void * handle, const uschar * filename, const uschar * keystring, int length, uschar ** result, uschar ** errmsg, uint * do_cache) { @@ -85,24 +85,24 @@ Lmdbstrct * lmdb_p = handle; dbkey.mv_data = CS keystring; dbkey.mv_size = length; -DEBUG(D_lookup) debug_printf("LMDB: lookup key: %s\n", (char *)keystring); +DEBUG(D_lookup) debug_printf_indent("LMDB: lookup key: %s\n", CS keystring); if ((ret = mdb_get(lmdb_p->txn, lmdb_p->db_dbi, &dbkey, &data)) == 0) { *result = string_copyn(US data.mv_data, data.mv_size); - DEBUG(D_lookup) debug_printf("LMDB: lookup result: %s\n", *result); + DEBUG(D_lookup) debug_printf_indent("LMDB: lookup result: %s\n", *result); return OK; } else if (ret == MDB_NOTFOUND) { *errmsg = US"LMDB: lookup, no data found"; - DEBUG(D_lookup) debug_printf("%s\n", *errmsg); + DEBUG(D_lookup) debug_printf_indent("%s\n", *errmsg); return FAIL; } else { *errmsg = string_sprintf("LMDB: lookup error: %s", mdb_strerror(ret)); - DEBUG(D_lookup) debug_printf("%s\n", *errmsg); + DEBUG(D_lookup) debug_printf_indent("%s\n", *errmsg); return DEFER; } }