From f13d8f591fb7ca3dfa05dd006c8fcba5bb190efd Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Sun, 4 May 2014 15:36:14 -0700 Subject: [PATCH] Fix addresses comparision on SPF module. --- src/plugins/spf.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/plugins/spf.c b/src/plugins/spf.c index f3616f44fe..8b9e647547 100644 --- a/src/plugins/spf.c +++ b/src/plugins/spf.c @@ -168,7 +168,8 @@ spf_check_element (struct spf_addr *addr, struct rspamd_task *task) struct in6_addr in6s, in6d; /* Basic comparing algorithm */ - if (addr->data.normal.ipv6 && task->from_addr.af == AF_INET6) { + if ((addr->data.normal.ipv6 && task->from_addr.af == AF_INET6) || + (!addr->data.normal.ipv6 && task->from_addr.af == AF_INET)) { if (addr->data.normal.ipv6) { addrlen = sizeof (struct in6_addr); memcpy (&in6s, &addr->data.normal.d.in6, sizeof (struct in6_addr)); -- 2.47.3