commit 2e3e5d5f7871668f89268b02831b58752cda503f from: Martijn van Duren date: Fri Mar 29 11:35:19 2019 UTC Add info messages about filtering commit - b633fa4cd119f62cce08728b29b9dbf8c023b59b commit + 2e3e5d5f7871668f89268b02831b58752cda503f blob - cd91a14e4a86f1149982b5afc5d591cb5dfed4a7 blob + 0a1beb15af7de3db3a0601b38f6227e3bfbaacb0 --- main.c +++ main.c @@ -17,6 +17,7 @@ #include #include +#include #include #include #include @@ -44,6 +45,7 @@ struct dnsbl_query { struct dnsbl_session { uint64_t reqid; uint64_t token; + char addr[INET6_ADDRSTRLEN]; int listed; struct dnsbl_query *query; RB_ENTRY(dnsbl_session) entry; @@ -128,6 +130,11 @@ dnsbl_connect(char *type, int version, struct timespec session->reqid = reqid; session->token = token; session->listed = -1; + if (inet_ntop(xaddr->af, xaddr->af == AF_INET ? + (void *)&(xaddr->addr) : (void *)&(xaddr->addr6), session->addr, + sizeof(session->addr)) == NULL) + fatal("inet_ntop"); + RB_INSERT(dnsbl_sessions, &dnsbl_sessions, session); if (xaddr->af == AF_INET) @@ -192,11 +199,15 @@ dnsbl_resolve(struct asr_result *result, void *arg) if (!markspam) { smtp_filter_disconnect(session->reqid, session->token, "Listed at %s", blacklists[query->blacklist]); + log_info("Rejected %s: listed at %s", session->addr, + blacklists[query->blacklist]); dnsbl_session_free(session); } else { dnsbl_session_query_done(session); session->listed = query->blacklist; smtp_filter_proceed(session->reqid, session->token); + log_info("Marked as spam %s: listed at %s", session->addr, + blacklists[query->blacklist]); } return; } @@ -212,6 +223,7 @@ dnsbl_resolve(struct asr_result *result, void *arg) return; } smtp_filter_proceed(session->reqid, session->token); + log_info("%s not listed", session->addr); if (!markspam) dnsbl_session_free(session); }