svn commit: r403798 - in head/mail/dkimproxy: . files
Kurt Jaeger
pi at FreeBSD.org
Tue Dec 15 18:47:50 UTC 2015
Author: pi
Date: Tue Dec 15 18:47:48 2015
New Revision: 403798
URL: https://svnweb.freebsd.org/changeset/ports/403798
Log:
mail/dkimproxy: Add IPv6 support, submitter takes MAINTAINER
See also:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=656041
PR: 205300
Submitted by: Andrey Fesenko <andrey at bsdnir.info>
Reviewed by: koobs
Added:
head/mail/dkimproxy/files/extra-patch-lib-MSDW-SMTP-Server.pm (contents, props changed)
head/mail/dkimproxy/files/extra-patch-scripts-dkimproxy.out (contents, props changed)
head/mail/dkimproxy/files/extra-patch-scripts-dkimproxy_in.conf.example (contents, props changed)
head/mail/dkimproxy/files/extra-patch-scripts-dkimproxy_out.conf.example (contents, props changed)
Modified:
head/mail/dkimproxy/Makefile
Modified: head/mail/dkimproxy/Makefile
==============================================================================
--- head/mail/dkimproxy/Makefile Tue Dec 15 18:26:36 2015 (r403797)
+++ head/mail/dkimproxy/Makefile Tue Dec 15 18:47:48 2015 (r403798)
@@ -3,10 +3,11 @@
PORTNAME= dkimproxy
PORTVERSION= 1.4.1
-CATEGORIES= mail
+PORTREVISION= 1
+CATEGORIES= mail ipv6
MASTER_SITES= SF
-MAINTAINER= ports at FreeBSD.org
+MAINTAINER= andrey at bsdnir.info
COMMENT= DKIM filter for Postfix
LICENSE= GPLv2
@@ -17,6 +18,8 @@ BUILD_DEPENDS= p5-Mail-DKIM>=0:${PORTSDI
p5-Error>=0:${PORTSDIR}/lang/p5-Error
RUN_DEPENDS:= ${BUILD_DEPENDS}
+OPTIONS_DEFINE= IPV6
+
GNU_CONFIGURE= yes
USES= perl5
NO_ARCH= yes
@@ -29,6 +32,13 @@ GROUPS= ${DKIMPROXYUSER}
SUB_LIST+= PERL=${PERL} \
DKIMPROXYUSER=${DKIMPROXYUSER}
+IPV6_RUN_DEPENDS= p5-IO-Socket-INET6>=0:${PORTSDIR}/net/p5-IO-Socket-INET6
+
+IPV6_EXTRA_PATCHES= ${FILESDIR}/extra-patch-lib-MSDW-SMTP-Server.pm
+IPV6_EXTRA_PATCHES= ${FILESDIR}/extra-patch-scripts-dkimproxy.out
+IPV6_EXTRA_PATCHES= ${FILESDIR}/extra-patch-scripts-dkimproxy_in.conf.example
+IPV6_EXTRA_PATCHES= ${FILESDIR}/extra-patch-scripts-dkimproxy_out.conf.example
+
post-patch:
@${GREP} -Ril 'perl' ${WRKDIR} | ${XARGS} ${REINPLACE_CMD} -i '' \
-e 's|/usr/bin/perl|${PERL}|' -e 's|@PERL@|${PERL}|'
Added: head/mail/dkimproxy/files/extra-patch-lib-MSDW-SMTP-Server.pm
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/mail/dkimproxy/files/extra-patch-lib-MSDW-SMTP-Server.pm Tue Dec 15 18:47:48 2015 (r403798)
@@ -0,0 +1,44 @@
+--- lib/MSDW/SMTP/Server.pm 2014-11-05 08:28:37.163794430 +0300
++++ lib/MSDW/SMTP/Server.pm 2014-11-05 08:34:51.757769187 +0300
+@@ -11,7 +11,7 @@
+ # Written by Bennett Todd <bet at rahul.net>
+
+ package MSDW::SMTP::Server;
+-use IO::Socket;
++use IO::Socket::INET6;
+ use IO::File;
+
+ =head1 NAME
+@@ -88,15 +88,14 @@
+ =item new(interface => $interface, port => $port);
+
+ The interface and port to listen on must be specified. The interface
+-must be a valid numeric IP address (0.0.0.0 to listen on all
+-interfaces, as usual); the port must be numeric. If this call
+-succeeds, it returns a server structure with an open
+-IO::Socket::INET in it, ready to listen on. If it fails it dies, so
+-if you want anything other than an exit with an explanatory error
+-message, wrap the constructor call in an eval block and pull the
+-error out of $@ as usual. This is also the case for all other
+-methods; they succeed or they die.
+-
++must be a valid numeric IPv4 or IPv6 address (0.0.0.0 or :: to listen
++on all interfaces, as usual); the port must be numeric. If this call
++succeeds, it returns a server structure with an open IO::Socket::INET6
++in it, ready to listen on. If it fails it dies, so if you want
++anything other than an exit with an explanatory error message, wrap
++the constructor call in an eval block and pull the error out of $@ as
++usual. This is also the case for all other methods; they succeed or
++they die.
+ =item accept([debug => FD]);
+
+ accept takes optional args and returns nothing. If an error occurs
+@@ -154,7 +153,7 @@
+ my ($this, @opts) = @_;
+ my $class = ref($this) || $this;
+ my $self = bless { @opts }, $class;
+- $self->{sock} = IO::Socket::INET->new(
++ $self->{sock} = IO::Socket::INET6->new(
+ LocalAddr => $self->{interface},
+ LocalPort => $self->{port},
+ Proto => 'tcp',
Added: head/mail/dkimproxy/files/extra-patch-scripts-dkimproxy.out
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/mail/dkimproxy/files/extra-patch-scripts-dkimproxy.out Tue Dec 15 18:47:48 2015 (r403798)
@@ -0,0 +1,21 @@
+--- scripts/dkimproxy.out 2014-11-05 08:30:40.674785725 +0300
++++ scripts/dkimproxy.out 2014-11-05 08:36:43.063761657 +0300
+@@ -314,17 +314,11 @@
+ {
+ my $self = shift;
+
+- # try to determine peer's address
+- use Socket;
+- my $peersockaddr = getpeername(STDOUT);
+- my ($port, $iaddr) = sockaddr_in($peersockaddr);
+- $ENV{REMOTE_ADDR} = inet_ntoa($iaddr);
+-
+ # initialize syslog
+ eval
+ {
+ openlog("dkimproxy.out", "perror,pid,ndelay", "mail");
+- syslog("debug", '%s', "connect from $ENV{REMOTE_ADDR}");
++ syslog("debug", '%s', "connect from $self->{server}->{peeraddr}");
+ };
+ if (my $E = $@)
+ {
Added: head/mail/dkimproxy/files/extra-patch-scripts-dkimproxy_in.conf.example
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/mail/dkimproxy/files/extra-patch-scripts-dkimproxy_in.conf.example Tue Dec 15 18:47:48 2015 (r403798)
@@ -0,0 +1,10 @@
+--- scripts/dkimproxy_in.conf.example 2014-11-05 08:47:46.842715313 +0300
++++ scripts/dkimproxy_in.conf.example 2014-11-05 08:48:19.031713000 +0300
+@@ -1,5 +1,5 @@
+ # specify what address/port DKIMproxy should listen on
+-listen 127.0.0.1:10025
++listen host.name:10025
+
+ # specify what address/port DKIMproxy forwards mail to
+-relay 127.0.0.1:10026
++relay host.name:10026
Added: head/mail/dkimproxy/files/extra-patch-scripts-dkimproxy_out.conf.example
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/mail/dkimproxy/files/extra-patch-scripts-dkimproxy_out.conf.example Tue Dec 15 18:47:48 2015 (r403798)
@@ -0,0 +1,13 @@
+--- scripts/dkimproxy_out.conf.example 2014-11-05 08:45:08.311726160 +0300
++++ scripts/dkimproxy_out.conf.example 2014-11-05 08:47:29.601719665 +0300
+@@ -1,8 +1,8 @@
+ # specify what address/port DKIMproxy should listen on
+-listen 127.0.0.1:10027
++listen host.name:10027
+
+ # specify what address/port DKIMproxy forwards mail to
+-relay 127.0.0.1:10028
++relay host.name:10028
+
+ # specify what domains DKIMproxy can sign for (comma-separated, no spaces)
+ domain example.org
More information about the svn-ports-all
mailing list