Mercurial > dnsbl
diff src/dnsbl.cpp @ 36:95607fbef608
no message
author | carl |
---|---|
date | Sun, 30 May 2004 18:38:36 -0700 |
parents | d718dca81bc9 |
children | 6e9d0b2d0720 |
line wrap: on
line diff
--- a/src/dnsbl.cpp Sun May 30 17:47:13 2004 -0700 +++ b/src/dnsbl.cpp Sun May 30 18:38:36 2004 -0700 @@ -442,7 +442,8 @@ *(n++) = '.'; } } - *(--n) = '\0'; // remove trailing . + if (n-nam) n--; // remove trailing . + *n = '\0'; // null terminate it register_string(ns, nam); // ns host to lookup later } } @@ -600,7 +601,7 @@ discard(nameservers); return reject_host; } - host = register_string(priv.memory->hosts, (*i).first); // put a copy into priv.memory->hosts, and return that reference + host = (*i).first; // a transient reference that needs to be replaced before we return it ip = (*i).second; if (!ip) ip = protected_dns_interface(host, false, NULL); if (debug_syslog) { @@ -619,6 +620,7 @@ if (ip) { status st = check_single(ip, dc.content_suffix); if (st == reject) { + host = register_string(priv.memory->hosts, host); // put a copy into priv.memory->hosts, and return that reference discard(nameservers); return st; }