Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Sep 2006 13:20:35 GMT
From:      Hirohisa Yamaguchi <umq@ueo.co.jp>
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   Re: ports/103404: [update][maintainer] mail/dkim-milter update to 0.5.2
Message-ID:  <200609231320.k8NDKZqf023196@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/103404; it has been noted by GNATS.

From: Hirohisa Yamaguchi <umq@ueo.co.jp>
To: bug-followup@FreeBSD.org, freebsd-ports-bugs@FreeBSD.org
Cc:  
Subject: Re: ports/103404: [update][maintainer] mail/dkim-milter update to 0.5.2
Date: Sat, 23 Sep 2006 22:19:09 +0900

 Here I merged the patch with another patch I sent as ports/103417.
 
 
 diff -Npru ports.orig/mail/dkim-milter/Makefile ports/mail/dkim-milter/Makefile
 --- ports.orig/mail/dkim-milter/Makefile	Wed Aug  2 11:47:05 2006
 +++ ports/mail/dkim-milter/Makefile	Sat Sep 23 20:53:11 2006
 @@ -4,9 +4,16 @@
  #
  # $FreeBSD: ports/mail/dkim-milter/Makefile,v 1.7 2006/08/02 02:47:05 clsung Exp $
  #
 +## There is a new option WITH_POSTFIX_MILTER
 +## to make this port work with mail/postfix port.
 +
 +## WITH_POSTFIX_MILTER knob implicitly defines
 +## SENDMAIL_MILTER_IN_BASE, to build with libmilter*
 +## in base system.  If you have deleted sendamil in
 +## base system, building this port may fail.
  
  PORTNAME=	dkim-milter
 -PORTVERSION=	0.5.1
 +PORTVERSION=	0.5.2
  CATEGORIES=	mail
  MASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
  MASTER_SITE_SUBDIR=	${PORTNAME}
 @@ -16,6 +23,12 @@ COMMENT=	Domainkeys milter for Sendmail
  
  USE_RC_SUBR=	milter-dkim.sh
  
 +.if defined(WITH_POSTFIX_MILTER)
 +SENDMAIL_MILTER_IN_BASE=	yes
 +RUN_DEPENDS+=	postfix>=2[3-9]*:${PORTSDIR}/mail/postfix
 +PKGMESSAGE=	pkg-message.postfix
 +.endif
 +
  .if !defined(SENDMAIL_MILTER_IN_BASE)
  .if defined(SENDMAIL_WITH_SHARED_MILTER)
  LIB_DEPENDS+=	milter.3:${PORTSDIR}/mail/${SENDMAIL_MILTER_PORT}
 @@ -74,6 +87,7 @@ post-install:
  	${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
  .endfor
  .endif
 +	@${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
  	@${CAT} ${PKGMESSAGE}
  
  .include <bsd.port.post.mk>
 diff -Npru ports.orig/mail/dkim-milter/distinfo ports/mail/dkim-milter/distinfo
 --- ports.orig/mail/dkim-milter/distinfo	Wed Aug  2 11:47:05 2006
 +++ ports/mail/dkim-milter/distinfo	Sat Sep 23 20:53:11 2006
 @@ -1,3 +1,3 @@
 -MD5 (dkim-milter-0.5.1.tar.gz) = f42599642ab230a89bdb69bdd8453dda
 -SHA256 (dkim-milter-0.5.1.tar.gz) = 03053781e0b1a7b056dd54660aa14c1903f5999fec1bb87e4b75b62a0c8e27d0
 -SIZE (dkim-milter-0.5.1.tar.gz) = 406286
 +MD5 (dkim-milter-0.5.2.tar.gz) = 9118cd6b280cd17ad82d43f3b4b51065
 +SHA256 (dkim-milter-0.5.2.tar.gz) = d0a62b93a52b893daa545f05d34cc46c28f6b37e70cc6bf4eec3f44630ac6de9
 +SIZE (dkim-milter-0.5.2.tar.gz) = 445510
 diff -Npru ports.orig/mail/dkim-milter/files/milter-dkim.sh.in ports/mail/dkim-milter/files/milter-dkim.sh.in
 --- ports.orig/mail/dkim-milter/files/milter-dkim.sh.in	Tue May  2 00:05:44 2006
 +++ ports/mail/dkim-milter/files/milter-dkim.sh.in	Sat Sep 23 22:09:26 2006
 @@ -15,6 +15,7 @@
  #
  # milterdkim_enable (bool):   Set to "NO" by default.
  #                             Set it to "YES" to enable dkim-milter
 +# milterdkim_uid (str):       Set username to run milter.
  # milterdkim_profiles (list): Set to "" by default.
  #                             Define your profiles here.
  # milterdkim_socket (str):    Path to the milter socket.
 @@ -30,8 +31,9 @@
  # DO NOT CHANGE THESE DEFAULT VALUES HERE
  #
  milterdkim_enable=${milterdkim_enable:-"NO"}
 +milterdkim_uid=${milterdkim_uid:-"dkimfilter"}
  milterdkim_profiles=${milterdkim_profiles:-}
 -milterdkim_socket=${milterdkim_socket:-"local:/var/run/dkim-filter"}
 +milterdkim_socket=${milterdkim_socket:-"local:/var/run/milterdkim/filter"}
  milterdkim_domain=${milterdkim_domain:-"example.com"}
  milterdkim_key=${milterdkim_key:-"/var/db/domainkeys/default.key.pem"}
  milterdkim_selector=${milterdkim_selector:-"default"}
 @@ -45,17 +47,17 @@ name="milterdkim"
  rcvar=`set_rcvar`
  
  start_precmd="dkim_prepcmd"
 -stop_postcmd="dkim_prepcmd"
 +stop_postcmd="dkim_postcmd"
  command="%%PREFIX%%/libexec/dkim-filter"
 -_pidprefix="/var/run/dkim-filter"
 -pidfile="${_pidprefix}.pid"
 +_piddir="/var/run/milterdkim"
 +pidfile="${_piddir}/pid"
  
  load_rc_config $name
  
  if [ -n "$2" ]; then
      profile="$2"
      if [ "x${milterdkim_profiles}" != "x" ]; then
 -	pidfile="${_pidprefix}.${profile}.pid"
 +	pidfile="${_piddir}/${profile}.pid"
  	eval milterdkim_enable="\${milterdkim_${profile}_enable:-${milterdkim_enable}}"
  	eval milterdkim_socket="\${milterdkim_${profile}_socket:-}"
  	if [ "x${milterdkim_socket}" = "x" ];then
 @@ -65,7 +67,7 @@ if [ -n "$2" ]; then
  	eval milterdkim_domain="\${milterdkim_${profile}_domain:-${milterdkim_domain}}"
  	eval milterdkim_key="\${milterdkim_${profile}_key:-${milterdkim_key}}"
  	eval milterdkim_flags="\${milterdkim_${profile}_flags:-${milterdkim_flags}}"
 -	command_args="-l -p ${milterdkim_socket} -P ${pidfile}"
 +	command_args="-l -p ${milterdkim_socket} -u ${milterdkim_uid} -P ${pidfile}"
      else
  	echo "$0: extra argument ignored"
      fi
 @@ -74,7 +76,7 @@ else
  	if [ "x$1" != "xrestart" ]; then
  	    for profile in ${milterdkim_profiles}; do
  		echo "===> milterdkim profile: ${profile}"
 -		%%PREFIX%%/etc/rc.d/milter-dkim.sh $1 ${profile}
 +		$0 $1 ${profile}
  		retcode="$?"
  		if [ "0${retcode}" -ne 0 ]; then
  		    failed="${profile} (${retcode}) ${failed:-}"
 @@ -88,7 +90,7 @@ else
  	fi
      else
  	milterdkim_flags=${milterdkim_flags}
 -	command_args="-l -p ${milterdkim_socket} -P ${pidfile}"
 +	command_args="-l -p ${milterdkim_socket} -u ${milterdkim_uid} -P ${pidfile}"
      fi
  fi
  
 @@ -99,6 +101,24 @@ dkim_prepcmd ()
      elif [ -S ${milterdkim_socket##unix:} ] ; then
          rm -f ${milterdkim_socket##unix:}
      fi
 +    if [ -d ${_piddir} ] ; then
 +	return;
 +    fi
 +    mkdir -p ${_piddir}
 +    if [ -n "${milterdkim_uid}" ] ; then
 +	chown ${milterdkim_uid} ${_piddir}
 +    fi
 +}
 +
 +dkim_postcmd()
 +{
 +    if [ -S ${milterdkim_socket##local:} ] ; then
 +        rm -f ${milterdkim_socket##local:}
 +    elif [ -S ${milterdkim_socket##unix:} ] ; then
 +        rm -f ${milterdkim_socket##unix:}
 +    fi
 +    # just if the directory is empty
 +    rmdir ${_piddir} > /dev/null 2>&1
  }
  
  run_rc_command "$1"
 diff -Npru ports.orig/mail/dkim-milter/files/patch-libar-Makefile.m4 ports/mail/dkim-milter/files/patch-libar-Makefile.m4
 --- ports.orig/mail/dkim-milter/files/patch-libar-Makefile.m4	Wed Jan 11 22:50:22 2006
 +++ ports/mail/dkim-milter/files/patch-libar-Makefile.m4	Thu Jan  1 09:00:00 1970
 @@ -1,10 +0,0 @@
 ---- libar/Makefile.m4.orig	Tue Jul 19 06:18:09 2005
 -+++ libar/Makefile.m4	Tue Jan 10 14:57:04 2006
 -@@ -11,7 +11,6 @@
 - 
 - bldPRODUCT_START(`library', `libar')
 - define(`bldSOURCES', `ar.c fix.c ')
 --define(`bldINSTALLABLE', `true')
 - bldPRODUCT_END
 - 
 - bldPRODUCT_START(`manpage', `ar')
 diff -Npru ports.orig/mail/dkim-milter/pkg-install ports/mail/dkim-milter/pkg-install
 --- ports.orig/mail/dkim-milter/pkg-install	Thu Jan  1 09:00:00 1970
 +++ ports/mail/dkim-milter/pkg-install	Sat Sep 23 20:53:08 2006
 @@ -0,0 +1,18 @@
 +#!/bin/sh
 +
 +if [ "$2" != "POST-INSTALL" ]
 +then
 +	exit 0;
 +fi
 +
 +# check if dkimfilter user exists
 +pw user show dkimfilter > /dev/null 2>&1
 +
 +if [ $? != 0 ]
 +then
 +	echo "===>  Adding user dkimfilter"
 +	pw useradd dkimfilter -c "milter-dkim" -s /sbin/nologin \
 +	-d /nonexistent
 +else
 +	echo "===>  Using existing user dkimfilter" 
 +fi
 diff -Npru ports.orig/mail/dkim-milter/pkg-message ports/mail/dkim-milter/pkg-message
 --- ports.orig/mail/dkim-milter/pkg-message	Tue Jan 17 22:55:55 2006
 +++ ports/mail/dkim-milter/pkg-message	Sat Sep 23 22:06:52 2006
 @@ -3,7 +3,7 @@
  In order to run this port, please add the following lines to
  /etc/mail/<your_configuration>.mc:
  
 -INPUT_MAIL_FILTER(`dkim-filter', `S=unix:/var/run/dkim-filter, F=T, T=R:2m')
 +INPUT_MAIL_FILTER(`dkim-filter', `S=unix:/var/run/milterdkim/filter, F=T, T=R:2m')
  
  define(`confMILTER_MACROS_CONNECT', `j, {daemon_name}')
  define(`confMILTER_MACROS_ENVFROM', `i, {auth_type}')
 diff -Npru ports.orig/mail/dkim-milter/pkg-message.postfix ports/mail/dkim-milter/pkg-message.postfix
 --- ports.orig/mail/dkim-milter/pkg-message.postfix	Thu Jan  1 09:00:00 1970
 +++ ports/mail/dkim-milter/pkg-message.postfix	Sat Sep 23 22:07:04 2006
 @@ -0,0 +1,16 @@
 +************************************************************************
 +
 +In order to run this port, please add the following lines to
 +${PREFIX}/etc/mail/main.cf:
 +
 +smtpd_milters = unix:/var/run/milterdkim/filter
 +
 +And to run the milter from startup, add milterdkim_enable="YES" in
 +your /etc/rc.conf.
 +Extra options can be found in startup script.
 +
 +Note: milter sockets must be accessible from postfix/smtpd;
 +  setting milterdkim_user appropriate or using inet sockets might be
 +  required.
 +
 +************************************************************************



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