From 9bee3171888d00c741e58a7c3532bd04ed7b48c1 Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Thu, 19 Aug 2010 15:00:11 +0400 Subject: [PATCH] * Ignore rfc822 group addresses --- src/expressions.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/expressions.c b/src/expressions.c index 0d61f9ca2..c009ddc84 100644 --- a/src/expressions.c +++ b/src/expressions.c @@ -1265,13 +1265,18 @@ rspamd_recipients_distance (struct worker_task *task, GList * args, void *unused i = 0; while (cur) { addr = internet_address_list_get_address (cur); - ar[i].name = memory_pool_strdup (task->task_pool, internet_address_get_addr (addr)); - if (ar[i].name != NULL && (c = strchr (ar[i].name, '@')) != NULL) { - *c = '\0'; - ar[i].addr = c + 1; + if (addr && internet_address_get_type (addr) == INTERNET_ADDRESS_NAME) { + ar[i].name = memory_pool_strdup (task->task_pool, internet_address_get_addr (addr)); + if (ar[i].name != NULL && (c = strchr (ar[i].name, '@')) != NULL) { + *c = '\0'; + ar[i].addr = c + 1; + } + cur = internet_address_list_next (cur); + i++; + } + else { + cur = internet_address_list_next (cur); } - cur = internet_address_list_next (cur); - i++; } #endif -- 2.39.5