summaryrefslogtreecommitdiffstats
path: root/src/plugins/surbl.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/surbl.c')
-rw-r--r--src/plugins/surbl.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/plugins/surbl.c b/src/plugins/surbl.c
index e048ed132..330e9cc66 100644
--- a/src/plugins/surbl.c
+++ b/src/plugins/surbl.c
@@ -310,8 +310,11 @@ static void
dns_callback (int result, char type, int count, int ttl, void *addresses, void *data)
{
struct memcached_param *param = (struct memcached_param *)data;
+ char c;
msg_debug ("dns_callback: in surbl request callback");
+ c = *(param->url->host + param->url->hostlen);
+ *(param->url->host + param->url->hostlen) = 0;
/* If we have result from DNS server, this url exists in SURBL, so increase score */
if (result == DNS_ERR_NONE && type == DNS_IPv4_A) {
msg_info ("surbl_check: url %s is in surbl %s", param->url->host, surbl_module_ctx->suffix);
@@ -320,6 +323,7 @@ dns_callback (int result, char type, int count, int ttl, void *addresses, void *
else {
msg_debug ("surbl_check: url %s is not in surbl %s", param->url->host, surbl_module_ctx->suffix);
}
+ *(param->url->host + param->url->hostlen) = c;
param->task->save.saved --;
if (param->task->save.saved == 0) {