# HG changeset patch # User carl # Date 1154454295 25200 # Node ID df355d117199e778c995d5a0ef4840347cb46af9 # Parent e316f6fd9c39e7bfa0156cc117e1d66060b2f884 uribl lookups fully qualified; allow two component host names diff -r e316f6fd9c39 -r df355d117199 ChangeLog --- a/ChangeLog Tue Aug 01 10:44:55 2006 -0700 +++ b/ChangeLog Tue Aug 01 10:44:55 2006 -0700 @@ -1,5 +1,10 @@ $Id$ +5.19 2006-08-01 + Bug fix - add trailing dot to uribl dns lookups to make them fully + qualified. Check host names with only two components, since + spammers are now using bare http://domain.tld references. + 5.18 2006-04-27 Bug fix - newer sendmail versions don't guarantee envelope addresses enclosed in <> wrapper. diff -r e316f6fd9c39 -r df355d117199 NEWS --- a/NEWS Tue Aug 01 10:44:55 2006 -0700 +++ b/NEWS Tue Aug 01 10:44:55 2006 -0700 @@ -1,5 +1,6 @@ $Id$ +5.19 2006-08-01 uribl dnsl lookups fully qualified; allow two component host names 5.18 2006-04-27 sendmail no longer guarantees <> wrapper on envelopes, don't ask uribls about rfc1918 space either 5.17 2006-03-25 never ask dns blacklists about rfc1918 address space 5.16 2006-03-16 bug fix, smtp error message for uribl filtering needs host name, not ip address diff -r e316f6fd9c39 -r df355d117199 configure.in --- a/configure.in Tue Aug 01 10:44:55 2006 -0700 +++ b/configure.in Tue Aug 01 10:44:55 2006 -0700 @@ -1,7 +1,7 @@ AC_INIT(configure.in) AM_CONFIG_HEADER(config.h) -AM_INIT_AUTOMAKE(dnsbl,5.18) +AM_INIT_AUTOMAKE(dnsbl,5.19) AC_PATH_PROGS(BASH, bash) AC_LANG_CPLUSPLUS diff -r e316f6fd9c39 -r df355d117199 src/dnsbl.cpp --- a/src/dnsbl.cpp Tue Aug 01 10:44:55 2006 -0700 +++ b/src/dnsbl.cpp Tue Aug 01 10:44:55 2006 -0700 @@ -678,7 +678,7 @@ if (x) hostname = x+1; *top = '.'; } - snprintf(buf, sizeof(buf), "%s.%s", hostname, priv.uribl_suffix); + snprintf(buf, sizeof(buf), "%s.%s.", hostname, priv.uribl_suffix); if (dns_interface(priv, buf, false, NULL)) { if (debug_syslog > 2) { char tmp[maxlen]; diff -r e316f6fd9c39 -r df355d117199 src/scanner.cpp --- a/src/scanner.cpp Tue Aug 01 10:44:55 2006 -0700 +++ b/src/scanner.cpp Tue Aug 01 10:44:55 2006 -0700 @@ -1211,7 +1211,7 @@ char *p1 = strchr((const char *)pending, '.'); char *p2 = strrchr((const char *)pending, '.'); char *p3 = strstr((const char *)pending, ".."); - if (p1 && (p1 != pending) & !p3) { + if (p1 && (p1 != (char*)pending) & !p3) { // have a period, so at least two components, and no empty components in_addr ip; if (inet_aton((const char*)pending, &ip))