awl_db = tcbdbnew();
if (tcbdbopen(awl_db, path, BDBOREADER)) {
tmp_db = tcbdbnew();
- if (tcbdbopen(tmp_db, tmppath, BDBOWRITER | BDBOTRUNC)) {
+ if (tcbdbopen(tmp_db, tmppath, BDBOWRITER | BDBOCREAT | BDBOTRUNC)) {
BDBCUR *cur = tcbdbcurnew(awl_db);
TCXSTR *key, *value;
+
key = tcxstrnew();
value = tcxstrnew();
if (tcbdbcurfirst(cur)) {
UNIXERR("rename");
return NULL;
}
- syslog(LOG_INFO, "database cleanup stat: before %u entries, after %d entries",
- old_count, new_count);
}
- syslog(LOG_INFO, "database cleanup finished");
+ syslog(LOG_INFO, "database cleanup stat: before %u entries, after %d entries",
+ old_count, new_count);
}
/* Effectively open the database.
if (config->client_awl) {
snprintf(path, sizeof(path), "%s/%swhitelist.db", directory, prefix);
+ syslog(LOG_INFO, "loading auto-whitelist database");
config->awl_db = greylist_db_get(config, path, true,
sizeof(struct awl_entry),
(db_entry_checker_t)(greylist_check_awlentry));
}
snprintf(path, sizeof(path), "%s/%sgreylist.db", directory, prefix);
+ syslog(LOG_INFO, "loading greylist database");
config->obj_db = greylist_db_get(config, path, true,
sizeof(struct obj_entry),
(db_entry_checker_t)(greylist_check_object));
vtk = policy_tokenize(v, vlen);
switch (policy_tokenize(k, klen)) {
-#define CASE(up, low) case PTK_##up: query->low = v; v[vlen] = '\0'; syslog(LOG_DEBUG, "%s = %s", ptokens[PTK_##up], query->low); break;
+#define CASE(up, low) case PTK_##up: query->low = v; v[vlen] = '\0'; break;
CASE(HELO_NAME, helo_name);
CASE(QUEUE_ID, queue_id);
CASE(SENDER, sender);
#define RM(File) \
snprintf(path, FILENAME_MAX, "%s/%s", basepath, File); \
unlink(path);
- RM("test1_greylist.db");
- RM("test1_whitelist.db");
+// RM("test1_greylist.db");
+// RM("test1_whitelist.db");
RM("test2_greylist.db");
RM("test2_whitelist.db");
#undef RM