Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Jan 2018 10:55:01 +0000 (UTC)
From:      Dirk Meyer <dinoex@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r459031 - in head/mail/spamilter: . files
Message-ID:  <201801151055.w0FAt18J097026@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dinoex
Date: Mon Jan 15 10:55:01 2018
New Revision: 459031
URL: https://svnweb.freebsd.org/changeset/ports/459031

Log:
  - Add IPv6 AAAA Lookups for MtaHostChk
  PR:		196756
  Submitted by:	jvp@lateapex.net

Added:
  head/mail/spamilter/files/patch-dns.c   (contents, props changed)
  head/mail/spamilter/files/patch-dns.h   (contents, props changed)
  head/mail/spamilter/files/patch-hndlrs.c   (contents, props changed)
Modified:
  head/mail/spamilter/Makefile

Modified: head/mail/spamilter/Makefile
==============================================================================
--- head/mail/spamilter/Makefile	Mon Jan 15 10:37:33 2018	(r459030)
+++ head/mail/spamilter/Makefile	Mon Jan 15 10:55:01 2018	(r459031)
@@ -2,7 +2,7 @@
 
 PORTNAME=	spamilter
 PORTVERSION=	0.60
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	mail
 MASTER_SITES=	http://www.wanlink.com/spamilter/download/
 

Added: head/mail/spamilter/files/patch-dns.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/mail/spamilter/files/patch-dns.c	Mon Jan 15 10:55:01 2018	(r459031)
@@ -0,0 +1,60 @@
+--- dns.c.orig	2005-07-17 19:55:13.000000000 -0500
++++ dns.c	2015-01-21 13:58:59.000000000 -0600
+@@ -58,25 +58,48 @@
+ 
+ int dns_query_rr_a(const res_state statp, char *fmt, ...)
+ {	va_list	vl;
+-	int	x,rc = 0;
+-	char	*hn = NULL;
++	int	x, haveRR = 0;
++	char	*hostName = NULL;
+ 
+ 	va_start(vl,fmt);
+ 	if(fmt != NULL && *fmt)
+ 	{
+-		x = vasprintf(&hn,fmt,vl);
+-		if(hn != NULL && x > 0)
+-		{	u_char	packet[NS_PACKETSZ];
++		x = vasprintf(&hostName,fmt,vl);
++		if(hostName != NULL && x > 0)
++		{	u_char	ns_packet[NS_PACKETSZ];
+ 
+-			rc = (res_nquery(statp, hn,ns_c_in,ns_t_a,packet,sizeof(packet)) == -1 ? 0 : 1);
++			haveRR = (res_nquery(statp, hostName, ns_c_in, ns_t_a, ns_packet, sizeof(ns_packet)) == -1 ? 0 : 1);
+ 		}
+ 
+-		if(hn != NULL)
+-			free(hn);
++		if(hostName != NULL)
++			free(hostName);
+ 	}
+ 	va_end(vl);
+ 
+-	return(rc);
++	return haveRR;
++}
++
++int dns_query_rr_aaaa(const res_state statp, char *fmt, ...)
++{	va_list	vl;
++	int	x, haveRR = 0;
++	char	*hostName = NULL;
++
++	va_start(vl,fmt);
++	if(fmt != NULL && *fmt)
++	{
++		x = vasprintf(&hostName,fmt,vl);
++		if(hostName != NULL && x > 0)
++		{	u_char	ns_packet[NS_PACKETSZ];
++
++			haveRR = (res_nquery(statp, hostName, ns_c_in, ns_t_aaaa, ns_packet, sizeof(ns_packet)) == -1 ? 0 : 1);
++		}
++
++		if(hostName != NULL)
++			free(hostName);
++	}
++	va_end(vl);
++
++	return haveRR;
+ }
+ 
+ int dns_rdnsbl_has_rr_a(const res_state statp, long ip, char *domain)

Added: head/mail/spamilter/files/patch-dns.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/mail/spamilter/files/patch-dns.h	Mon Jan 15 10:55:01 2018	(r459031)
@@ -0,0 +1,11 @@
+--- dns.h.orig	2004-11-25 18:13:49.000000000 -0600
++++ dns.h	2015-01-21 14:06:33.000000000 -0600
+@@ -47,6 +47,8 @@
+ 
+ 	#define mkip(a,b,c,d) ((((a)&0xff)<<24)|(((b)&0xff)<<16)|(((c)&0xff)<<8)|((d)&0xff))
+ 
++	int dns_query_rr_aaaa(const res_state statp, char *fmt, ...);
++
+ 	int dns_query_rr_a(const res_state statp, char *fmt, ...);
+ 	int dns_rdnsbl_has_rr_a(const res_state statp, long ip, char *domain);
+ 

Added: head/mail/spamilter/files/patch-hndlrs.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/mail/spamilter/files/patch-hndlrs.c	Mon Jan 15 10:55:01 2018	(r459031)
@@ -0,0 +1,15 @@
+--- hndlrs.c.orig	2005-07-17 19:55:13.000000000 -0500
++++ hndlrs.c	2015-01-21 14:47:27.000000000 -0600
+@@ -466,7 +466,11 @@
+ 						if(gMtaHostIpfw)
+ 							mlfi_MtaHostIpfwAction(priv->ipstr,"add");
+ 					}
+-					else if(gMtaHostChk && !priv->islocalnethost && !dns_query_rr_a(priv->statp,priv->helo))
++					else if(gMtaHostChk
++						&& !priv->islocalnethost
++						&& !dns_query_rr_a(priv->statp,priv->helo)
++						&& !dns_query_rr_aaaa(priv->statp,priv->helo)
++						)
+ 					{
+ 						mlfi_setreply(ctx,550,"5.7.1","Rejecting due to security policy - Invalid hostname '%s', Please see: %s#invalidhostname",priv->helo,gPolicyUrl);
+ 						mlfi_debug("envrcpt: Invalid MTA hostname '%s'\n",priv->helo);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201801151055.w0FAt18J097026>