Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 12 Nov 2005 18:27:53 +0900 (JST)
From:      Yoshisato YANAGISAWA <yanagisawa@csg.is.titech.ac.jp>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/88881: Update port: mail/dkfilter rc.d scripts provided and so on.
Message-ID:  <200511120927.jAC9RrQs018830@frodo.csg.is.titech.ac.jp>
Resent-Message-ID: <200511120930.jAC9UHIQ020645@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         88881
>Category:       ports
>Synopsis:       Update port: mail/dkfilter rc.d scripts provided and so on.
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat Nov 12 09:30:16 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Yoshisato YANAGISAWA
>Release:        FreeBSD 6.0-RC1 i386
>Organization:
Dept. of Mathematical and Computing Sciences,
Graduate School of Information Science and Engineering,
Tokyo Institute of Technology.
>Environment:
System: FreeBSD frodo.csg.is.titech.ac.jp 6.0-RC1 FreeBSD 6.0-RC1 #65: Wed Oct 12 00:24:54 JST 2005 yanagisawa@frodo.csg.is.titech.ac.jp:/usr/obj/usr/src/sys/FRODO i386


	
>Description:
	- run commands for dkfilter.in and dkfilter.out are provided.
	- Order of elements in DomainKey-Signature is changed the same as
	  Yahoo! mail and gmail.
	- some mistakes in pkg-descr document are fixed.
>How-To-Repeat:
	n/a
>Fix:


Use following patch:

diff -ruN /usr/ports/mail/dkfilter/Makefile dkfilter/Makefile
--- /usr/ports/mail/dkfilter/Makefile	Sat Nov  5 12:57:27 2005
+++ dkfilter/Makefile	Sat Nov 12 17:57:59 2005
@@ -23,12 +23,26 @@
 RUN_DEPENDS=	${BUILD_DEPENDS}
 
 GNU_CONFIGURE=	yes
+USE_RC_SUBR=	yes
 WRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}
 
+RCDIR?=		${PREFIX}/etc/rc.d
+
+PLIST_SUB=	RCDIR=${RCDIR:S,^${PREFIX}/,,}
+
 .include <bsd.port.pre.mk>
 
+RC_SCRIPTS_SUB=PREFIX=${PREFIX} RC_SUBR=${RC_SUBR}
+
 .if ${PERL_LEVEL} < 500600
 IGNORE=	Perl 5.8 or newer required. Install lang/perl5.8 and try again.
 .endif
+
+post-install:
+.for i in dkfilter_in dkfilter_out
+	${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
+		${FILESDIR}/${i}.sh > ${WRKDIR}/${i}.sh
+	${INSTALL_SCRIPT} ${WRKDIR}/${i}.sh ${RCDIR}/${i}.sh
+.endfor
 
 .include <bsd.port.post.mk>
diff -ruN /usr/ports/mail/dkfilter/distinfo dkfilter/distinfo
--- /usr/ports/mail/dkfilter/distinfo	Sat Nov  5 12:57:27 2005
+++ dkfilter/distinfo	Sat Nov 12 18:00:36 2005
@@ -1,2 +1,3 @@
 MD5 (dkfilter.tgz) = ab0bab68dc09d3a86acccd1115b4c28a
+SHA256 (dkfilter.tgz) = 7113453ab611f322513fb980d5e50026435934d60e863511ac1e7e3a87400742
 SIZE (dkfilter.tgz) = 76885
diff -ruN /usr/ports/mail/dkfilter/files/dkfilter_in.sh dkfilter/files/dkfilter_in.sh
--- /usr/ports/mail/dkfilter/files/dkfilter_in.sh	Thu Jan  1 09:00:00 1970
+++ dkfilter/files/dkfilter_in.sh	Sat Nov 12 18:13:33 2005
@@ -0,0 +1,56 @@
+#!/bin/sh
+# $FreeBSD$
+#
+
+# PROVIDE: dkfilter_in
+# REQUIRE: LOGIN
+# BEFORE: mail
+# KEYWORD: FreeBSD shutdown
+
+#
+# Add the following lines to /etc/rc.conf to enable dkfilter.in:
+#
+# dkfilter_in_enable="YES"
+#
+
+. %%RC_SUBR%%
+
+name=dkfilter_in
+rcvar=`set_rcvar`
+
+# set defaults
+
+dkfilter_in_enable=${dkfilter_in_enable:-"NO"}
+dkfilter_in_flags=${dkfilter_in_flags:-"127.0.0.1:10025 127.0.0.1:10026"}
+dkfilter_in_pidfile=${dkfilter_in_pidfile:-"/var/run/dkfilter_in.pid"}
+dkfilter_in_user=${dkfilter_user:-"dkfilter"}
+
+start_cmd="dkfilter_in_start"
+stop_cmd="dkfilter_in_stop"
+
+dkfilter_in_start()
+{
+	if [ -f ${dkfilter_in_pidfile} ]; then
+		echo "${name} already running?"
+		exit 1
+	fi
+	touch ${dkfilter_in_pidfile}
+	chown ${dkfilter_in_user} ${dkfilter_in_pidfile}
+	su -m ${dkfilter_in_user} -c "daemon -p ${dkfilter_in_pidfile} \
+		%%PREFIX%%/bin/dkfilter.in ${dkfilter_in_flags}"
+	echo "Starting ${name}"
+}
+
+dkfilter_in_stop()
+{
+	if [ ! -f ${dkfilter_in_pidfile} ]; then
+		echo "${name} not running?"
+		exit 1
+	fi
+	kill `cat ${dkfilter_in_pidfile}`
+	rm -f ${dkfilter_in_pidfile}
+	echo "Stopping ${name}"
+}
+
+load_rc_config $name
+run_rc_command "$1"
diff -ruN /usr/ports/mail/dkfilter/files/dkfilter_out.sh dkfilter/files/dkfilter_out.sh
--- /usr/ports/mail/dkfilter/files/dkfilter_out.sh	Thu Jan  1 09:00:00 1970
+++ dkfilter/files/dkfilter_out.sh	Sat Nov 12 17:55:31 2005
@@ -0,0 +1,62 @@
+#!/bin/sh
+# $FreeBSD$
+#
+
+# PROVIDE: dkfilter_out
+# REQUIRE: LOGIN
+# BEFORE: mail
+# KEYWORD: FreeBSD shutdown
+
+#
+# Add the following lines to /etc/rc.conf to enable dkfilter.out:
+#
+# dkfilter_out_enable="YES"
+#
+# Before you enable dkfilter.out, you also need to make your domainkey to
+# set it to DNS and configurate dkfilter_flags.
+#
+
+. %%RC_SUBR%%
+
+name="dkfilter_out"
+rcvar=`set_rcvar`
+
+# set defaults
+
+dkfilter_out_enable=${dkfilter_out_enable:-"NO"}
+dkfilter_out_flags=${dkfilter_out_flags:-" --header \
+	--keyfile=%%PREFIX%%/etc/dkfilter/private.key \
+	--selector=selector1 --domain=example.org --method=nofws \
+	127.0.0.1:10027 127.0.0.1:10028"}
+dkfilter_out_pidfile=${dkfilter_out_pidfile:-"/var/run/dkfilter_out.pid"}
+dkfilter_out_user=${dkfilter_user:-"dkfilter"}
+
+start_cmd="dkfilter_out_start"
+stop_cmd="dkfilter_out_stop"
+
+dkfilter_out_start()
+{
+	if [ -f ${dkfilter_out_pidfile} ]; then
+		echo "${name} already running?"
+		exit 1
+	fi 
+	touch ${dkfilter_out_pidfile}
+	chown ${dkfilter_out_user} ${dkfilter_out_pidfile}
+	su -m ${dkfilter_out_user} -c "daemon -p ${dkfilter_out_pidfile} \
+		%%PREFIX%%/bin/dkfilter.out ${dkfilter_out_flags}"
+	echo "Starting ${name}."
+}
+
+dkfilter_out_stop()
+{
+	if [ ! -f ${dkfilter_out_pidfile} ]; then
+		echo "${name} not running?"
+		exit 1
+	fi
+	kill `cat ${dkfilter_out_pidfile}`
+	rm -f ${dkfilter_out_pidfile}
+	echo "Stopping ${name}"
+}
+
+load_rc_config $name
+run_rc_command "$1"
diff -ruN /usr/ports/mail/dkfilter/files/patch-Signature.pm dkfilter/files/patch-Signature.pm
--- /usr/ports/mail/dkfilter/files/patch-Signature.pm	Thu Jan  1 09:00:00 1970
+++ dkfilter/files/patch-Signature.pm	Sat Nov 12 01:50:14 2005
@@ -0,0 +1,23 @@
+--- lib/Mail/DomainKeys/Signature.pm.orig	Wed Jun 22 00:43:53 2005
++++ lib/Mail/DomainKeys/Signature.pm	Sat Nov 12 01:49:56 2005
+@@ -78,14 +78,15 @@
+ 	$self->algorithm and
+ 		$text .= "a=" . $self->algorithm . "; ";
+ 
++	$text .= "q=" . $self->protocol . "; ";
++	$text .= "c=" . $self->method . ";\n\t";
++	$text .= "s=" . $self->selector . "; ";
++	$text .= "d=" . $self->domain . ";\n\t";
++
+ 	$self->headerlist and
+-		$text .= "h=" . $self->headerlist . "; ";
++		$text .= "h=" . $self->headerlist . ";\n\t";
+ 
+ 	$text .= "b=" . $self->signature . "; ";
+-	$text .= "c=" . $self->method . "; ";
+-	$text .= "d=" . $self->domain . "; ";
+-	$text .= "q=" . $self->protocol . "; ";
+-	$text .= "s=" . $self->selector;
+ 
+ 	length $text and
+ 		return $text;
diff -ruN /usr/ports/mail/dkfilter/pkg-descr dkfilter/pkg-descr
--- /usr/ports/mail/dkfilter/pkg-descr	Sat Nov  5 12:57:27 2005
+++ dkfilter/pkg-descr	Sat Nov  5 17:46:46 2005
@@ -1,7 +1,7 @@
-This is implementation of DomainKeys draft standard for the Postfix mail
+This is an implementation of DomainKeys draft standard for the Postfix mail
 transfer agent.  DomainKeys is proposed by Yahoo!, Inc. and this is a scheme
 to sign and verify e-mail messages on a per-domain basis.
 Protocol and other issues about this draft standard can be found at
-http://antispam.yahoo.com/domain/keys.
+http://antispam.yahoo.com/domainkeys.
 
 WWW: http://jason.long.name/dkfilter/
diff -ruN /usr/ports/mail/dkfilter/pkg-plist dkfilter/pkg-plist
--- /usr/ports/mail/dkfilter/pkg-plist	Sat Nov  5 12:57:27 2005
+++ dkfilter/pkg-plist	Fri Nov 11 17:22:22 2005
@@ -13,6 +13,8 @@
 bin/dkverify.pl
 bin/dkfilter.in
 bin/dkfilter.out
+%%RCDIR%%/dkfilter_out.sh
+%%RCDIR%%/dkfilter_in.sh
 @dirrm lib/Mail/DomainKeys/Key
 @dirrm lib/Mail/DomainKeys
 @dirrm lib/Mail
>Release-Note:
>Audit-Trail:
>Unformatted:



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