X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/0756eb3cb50d73a77b486e47528f7cb1bffdb299..e6d225ae6e6811d3c88dc201642a2127ff6c11bd:/src/src/lookups/cdb.c diff --git a/src/src/lookups/cdb.c b/src/src/lookups/cdb.c index 1daa2bbd4..6e8b88790 100644 --- a/src/src/lookups/cdb.c +++ b/src/src/lookups/cdb.c @@ -1,4 +1,4 @@ -/* $Cambridge: exim/src/src/lookups/cdb.c,v 1.1 2004/10/07 13:10:01 ph10 Exp $ */ +/* $Cambridge: exim/src/src/lookups/cdb.c,v 1.3 2005/06/27 14:29:44 ph10 Exp $ */ /************************************************* * Exim - an Internet mail transport agent * @@ -56,7 +56,6 @@ #include "../exim.h" #include "lf_functions.h" -#include "cdb.h" #ifdef HAVE_MMAP # include @@ -144,7 +143,9 @@ cdb_unpack(uschar *buf) return num; } -void * +static void cdb_close(void *handle); + +static void * cdb_open(uschar *filename, uschar **errmsg) { @@ -167,7 +168,7 @@ cdb_open(uschar *filename, if (statbuf.st_size < CDB_HASH_TABLE) { int save_errno = errno; *errmsg = string_open_failed(errno, - "%s to short for cdb lookup", + "%s too short for cdb lookup", filename); errno = save_errno; return NULL; @@ -245,7 +246,7 @@ cdb_open(uschar *filename, * Check entry point * *************************************************/ -BOOL +static BOOL cdb_check(void *handle, uschar *filename, int modemask, @@ -270,7 +271,7 @@ cdb_check(void *handle, * Find entry point * *************************************************/ -int +static int cdb_find(void *handle, uschar *filename, uschar *keystring, @@ -418,7 +419,7 @@ cdb_find(void *handle, /* See local README for interface description */ -void +static void cdb_close(void *handle) { struct cdb_state * cdbp = handle; @@ -431,7 +432,25 @@ struct cdb_state * cdbp = handle; } #endif /* HAVE_MMAP */ - close(cdbp->fileno); + (void)close(cdbp->fileno); } +lookup_info cdb_lookup_info = { + US"cdb", /* lookup name */ + lookup_absfile, /* uses absolute file name */ + cdb_open, /* open function */ + cdb_check, /* check function */ + cdb_find, /* find function */ + cdb_close, /* close function */ + NULL, /* no tidy function */ + NULL /* no quoting function */ +}; + +#ifdef DYNLOOKUP +#define cdb_lookup_module_info _lookup_module_info +#endif + +static lookup_info *_lookup_list[] = { &cdb_lookup_info }; +lookup_module_info cdb_lookup_module_info = { LOOKUP_MODULE_INFO_MAGIC, _lookup_list, 1 }; + /* End of lookups/cdb.c */