ports/107668: New Port: mail/p5-qpsmtpd A flexible SMTP daemon written in Perl and featuring a plugin API.
kitsune
v.velox at vvelox.net
Mon Jan 8 01:00:35 UTC 2007
>Number: 107668
>Category: ports
>Synopsis: New Port: mail/p5-qpsmtpd A flexible SMTP daemon written in Perl and featuring a plugin API.
>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: Mon Jan 08 01:00:34 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: kitsune
>Release: FreeBSD 6.2-PRERELEASE i386
>Organization:
>Environment:
System: FreeBSD 6.2-PRERELEASE #1: Fri Jan 5 14:07:24 CST 2007
kitsune at vixen42.vulpes:/usr/obj/usr/src/sys/vixen42-1
>Description:
>How-To-Repeat:
>Fix:
--- p5-qpsmtpd.shar begins here ---
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# ./p5-qpsmtpd/
# ./p5-qpsmtpd/Makefile
# ./p5-qpsmtpd/files
# ./p5-qpsmtpd/files/qpsmtpd
# ./p5-qpsmtpd/pkg-plist
# ./p5-qpsmtpd/distinfo
# ./p5-qpsmtpd/pkg-descr
#
echo c - ./p5-qpsmtpd/
mkdir -p ./p5-qpsmtpd/ > /dev/null 2>&1
echo x - ./p5-qpsmtpd/Makefile
sed 's/^X//' >./p5-qpsmtpd/Makefile << 'END-of-./p5-qpsmtpd/Makefile'
X# New ports collection makefile for: qpsmtpd
X# Date created: 1 January 2007
X# Whom: Zane C. Bowers
X#
X# $FreeBSD$
X#
X
XPORTNAME= p5-qpsmtpd
XPORTVERSION= 0.32
XDISTFILES= qpsmtpd-${PORTVERSION}.tar.gz
XCATEGORIES= mail
XMASTER_SITES= http://smtpd.develooper.com/files/
X
XWRKSRC= ${WRKDIR}/qpsmtpd-${PORTVERSION}
X
XPKGMESSAGE= ${WRKDIR}/pkg-message
X
XMAINTAINER= vvelox at vvelox.net
X
XCOMMENT= A flexible SMTP daemon written in Perl and featuring a plugin API.
X
XPERL_CONFIGURE= yes
X
X#none for Net::Milter yet... meaning the milter plugin does not work and thus deleted when installed
X#none for Clamd yet... meaning the plugins/virus/clamd does not work and thus deleted when installed
XRUN_DEPENDS= ${SITE_PERL}/${PERL_ARCH}/Net/DNS.pm:${PORTSDIR}/dns/p5-Net-DNS \
X ${SITE_PERL}/${PERL_ARCH}/MIME/Base64.pm:${PORTSDIR}/converters/p5-MIME-Base64 \
X ${SITE_PERL}/Mail/Header.pm:${PORTSDIR}/mail/p5-Mail-Tools \
X ${SITE_PERL}/IO/Socket/SSL.pm:${PORTSDIR}/security/p5-IO-Socket-SSL \
X spamd:${PORTSDIR}/mail/p5-Mail-SpamAssassin \
X ${SITE_PERL}/${PERL_ARCH}/Net/DNS/Resolver.pm:${PORTSDIR}/dns/p5-Net-DNS \
X ${SITE_PERL}/Date/Parse.pm:${PORTSDIR}/devel/p5-TimeDate \
X ${SITE_PERL}/File/Temp.pm:${PORTSDIR}/devel/p5-File-Temp \
X ${SITE_PERL}/${PERL_ARCH}/Geo/IP.pm:${PORTSDIR}/net/p5-Geo-IP \
X ${SITE_PERL}/Net/LDAP.pm:${PORTSDIR}/net/p5-perl-ldap \
X ${SITE_PERL}/Digest/HMAC_MD5.pm:${PORTSDIR}/security/p5-Digest-HMAC
X
X
XMAN3= Qpsmtpd::Constants.3 \
X Qpsmtpd::DSN.3 \
X Qpsmtpd::Auth.3 \
X Qpsmtpd::Transaction.3 \
X Qpsmtpd::Address.3 \
X Qpsmtpd.3 \
X Qpsmtpd::Connection.3 \
X Qpsmtpd::Postfix.3 \
X Apache::Qpsmtpd.3
X
X#.if (${OSVERSION} >= 500113)
XRC_SUFX=
X#.else
X#RC_SUFX= .sh
X#.endif
X
XRC_SUBR_FILE= ${PORTSDIR}/mail/p5-qpsmtpd/files/qpsmtpd
XRC_SUBR_FINAL= ${PREFIX}/etc/rc.d/qpsmtpd${RC_SUFX}
X
Xpre-configure:
X @${RM} -v ${WRKSRC}/plugins/milter
X @${RM} -v ${WRKSRC}/plugins/virus/clamdscan
X
Xpost-install:
X @${MKDIR} -v ${PREFIX}/share/examples/qpsmtpd
X @${CP} -v ${WRKSRC}/config.sample/* ${PREFIX}/share/examples/qpsmtpd
X @${MKDIR} -v ${PREFIX}/share/qpsmtpd
X @${MKDIR} -v ${PREFIX}/share/qpsmtpd/plugins
X @${CP} -vr ${WRKSRC}/plugins/ ${PREFIX}/share/qpsmtpd/plugins
X @${SED} -e 's,%%RCDLINK%%,${RCDLINK},g; s,%%PREFIX%%,${PREFIX},g' \
X ${RC_SUBR_FILE} > ${RC_SUBR_FINAL}
X @${ECHO_MSG}
X @${ECHO_MSG}
X @${ECHO_MSG} '*****************************************************************'
X @${ECHO_MSG}
X @${ECHO_MSG} Please read http://wiki.qpsmtpd.org/ for more info about
X @${ECHO_MSG} installation.
X @${ECHO_MSG}
X @${ECHO_MSG} The example config can be found in ${PREFIX}/share/examples/qpsmtpd/
X @${ECHO_MSG}
X @${ECHO_MSG} The plugins can be found in ${PREFIX}/share/qpsmtpd/plugins/
X @${ECHO_MSG}
X @${ECHO_MSG} '*****************************************************************'
X
X.include <bsd.port.mk>
END-of-./p5-qpsmtpd/Makefile
echo c - ./p5-qpsmtpd/files
mkdir -p ./p5-qpsmtpd/files > /dev/null 2>&1
echo x - ./p5-qpsmtpd/files/qpsmtpd
sed 's/^X//' >./p5-qpsmtpd/files/qpsmtpd << 'END-of-./p5-qpsmtpd/files/qpsmtpd'
X#!/bin/sh
X
X# PROVIDE: qpsmtpd
X# REQUIRE: NETWORKING SERVERS
X# BEFORE: securelevel
X
X#variables
X#qpsmtpd_user = the user to run qpsmtpd-forkserver under
X#qpsmtpd_group = the group the pid dir will be chowned to
X#qpsmtpd_port = the port it should listen on
X#qpsmtpd_max_per_ip = max connections per IP
X#qpsmtpd_max_connections = maximum total connections
X#qpsmtpd_listen_on = IP to listen on
X
X. "/etc/rc.subr"
X
Xname="qpsmtpd"
Xrcvar=`set_rcvar`
X
Xcommand="%%PREFIX%%/bin/qpsmtpd-forkserver"
Xpidfile="/var/run/qpsmtpd/qpsmtpd.pid"
X
Xstart_precmd="start_precmd"
Xstart_cmd="start_cmd"
Xstop_cmd="stop_cmd"
X
Xstart_precmd()
X{
X #exits if no user is specified
X if [ -z $qpsmtpd_user ]; then
X echo "qpsmtpd_user not set"
X exit 1
X fi
X
X #exits if no group is specified
X if [ -z $qpsmtpd_group ]; then
X echo "qpsmtpd_group not set"
X exit 1
X fi
X
X #sets it to the default if the port is not specified
X if [ -z $qpsmtpd_port ]; then
X qpsmtpd_port="2525"
X fi
X
X #set it to the default max per ip
X if [ -z $qpsmtpd_max_per_ip ]; then
X qpsmtpd_max_per_ip="5"
X fi
X
X #set it do the max number of connections total
X if [ -z $qpsmtpd_max_connections ]; then
X qpsmtpd_max_connections="15"
X fi
X
X #set the default listen on to everything
X if [ -z $qpsmtpd_listen_on ]; then
X qpsmtpd_listen_on="0.0.0.0"
X fi
X
X if [ ! -d /var/run/qpsmtpd/ ] ; then
X mkdir /var/run/qpsmtpd
X fi
X
X chown $qpsmtpd_user:$qpsmtpd_group /var/run/qpsmtpd
X}
X
Xstart_cmd()
X{
X eval $command -p $qpsmtpd_port -c $qpsmtpd_max_connections -u $qpsmtpd_users -m $qpsmtpd_max_per_ip -l $qpsmtpd_listen_on --pid-file $pidfile
X}
X
Xstop_cmd()
X{
X kill `cat $pidfile`
X}
X
Xrun_rc_command "$1"
END-of-./p5-qpsmtpd/files/qpsmtpd
echo x - ./p5-qpsmtpd/pkg-plist
sed 's/^X//' >./p5-qpsmtpd/pkg-plist << 'END-of-./p5-qpsmtpd/pkg-plist'
Xbin/qpsmtpd-forkserver
Xbin/qpsmtpd
X%%SITE_PERL%%/Qpsmtpd.pm
X%%SITE_PERL%%/Qpsmtpd/SelectServer.pm
X%%SITE_PERL%%/Qpsmtpd/Utils.pm
X%%SITE_PERL%%/Qpsmtpd/TcpServer.pm
X%%SITE_PERL%%/Qpsmtpd/Constants.pm
X%%SITE_PERL%%/Qpsmtpd/Auth.pm
X%%SITE_PERL%%/Qpsmtpd/DSN.pm
X%%SITE_PERL%%/Qpsmtpd/Transaction.pm
X%%SITE_PERL%%/Qpsmtpd/Address.pm
X%%SITE_PERL%%/Qpsmtpd/Plugin.pm
X%%SITE_PERL%%/Qpsmtpd/SMTP.pm
X%%SITE_PERL%%/Qpsmtpd/Postfix.pm
X%%SITE_PERL%%/Qpsmtpd/Connection.pm
X%%SITE_PERL%%/Apache/Qpsmtpd.pm
X at dirrm %%SITE_PERL%%/Qpsmtpd/
Xshare/examples/qpsmtpd/IP
Xshare/examples/qpsmtpd/badhelo
Xshare/examples/qpsmtpd/badrcptto_patterns
Xshare/examples/qpsmtpd/dnsbl_zones
Xshare/examples/qpsmtpd/invalid_resolvable_fromhost
Xshare/examples/qpsmtpd/logging
Xshare/examples/qpsmtpd/loglevel
Xshare/examples/qpsmtpd/plugins
Xshare/examples/qpsmtpd/relayclients
Xshare/examples/qpsmtpd/require_resolvable_fromhost
Xshare/examples/qpsmtpd/rhsbl_zones
Xshare/examples/qpsmtpd/size_threshold
X at dirrm share/examples/qpsmtpd/
Xshare/qpsmtpd/plugins/ident/geoip
Xshare/qpsmtpd/plugins/ident/p0f
X at dirrm share/qpsmtpd/plugins/ident
Xshare/qpsmtpd/plugins/auth/auth_cvm_unix_local
Xshare/qpsmtpd/plugins/auth/auth_flat_file
Xshare/qpsmtpd/plugins/auth/auth_ldap_bind
Xshare/qpsmtpd/plugins/auth/auth_vpopmail_sql
Xshare/qpsmtpd/plugins/auth/authdeny
Xshare/qpsmtpd/plugins/auth/authnull
X at dirrm share/qpsmtpd/plugins/auth
Xshare/qpsmtpd/plugins/queue/exim-bsmtp
Xshare/qpsmtpd/plugins/queue/maildir
Xshare/qpsmtpd/plugins/queue/postfix-queue
Xshare/qpsmtpd/plugins/queue/qmail-queue
Xshare/qpsmtpd/plugins/queue/smtp-forward
X at dirrm share/qpsmtpd/plugins/queue
Xshare/qpsmtpd/plugins/logging/adaptive
Xshare/qpsmtpd/plugins/logging/devnull
Xshare/qpsmtpd/plugins/logging/file
Xshare/qpsmtpd/plugins/logging/syslog
Xshare/qpsmtpd/plugins/logging/warn
X at dirrm share/qpsmtpd/plugins/logging
Xshare/qpsmtpd/plugins/virus/uvscan
Xshare/qpsmtpd/plugins/virus/bitdefender
Xshare/qpsmtpd/plugins/virus/check_for_hi_virus
Xshare/qpsmtpd/plugins/virus/clamav
Xshare/qpsmtpd/plugins/virus/hbedv
Xshare/qpsmtpd/plugins/virus/kavscanner
Xshare/qpsmtpd/plugins/virus/klez_filter
Xshare/qpsmtpd/plugins/virus/sophie
Xshare/qpsmtpd/plugins/virus/aveclient
X at dirrm share/qpsmtpd/plugins/virus
Xshare/qpsmtpd/plugins/check_earlytalker
Xshare/qpsmtpd/plugins/check_loop
Xshare/qpsmtpd/plugins/check_norelay
Xshare/qpsmtpd/plugins/check_relay
Xshare/qpsmtpd/plugins/check_spamhelo
Xshare/qpsmtpd/plugins/content_log
Xshare/qpsmtpd/plugins/count_unrecognized_commands
Xshare/qpsmtpd/plugins/dns_whitelist_soft
Xshare/qpsmtpd/plugins/dnsbl
Xshare/qpsmtpd/plugins/greylisting
Xshare/qpsmtpd/plugins/hosts_allow
Xshare/qpsmtpd/plugins/http_config
Xshare/qpsmtpd/plugins/check_badrcptto_patterns
Xshare/qpsmtpd/plugins/check_badrcptto
Xshare/qpsmtpd/plugins/check_badmailfromto
Xshare/qpsmtpd/plugins/quit_fortune
Xshare/qpsmtpd/plugins/rcpt_ok
Xshare/qpsmtpd/plugins/require_resolvable_fromhost
Xshare/qpsmtpd/plugins/rhsbl
Xshare/qpsmtpd/plugins/sender_permitted_from
Xshare/qpsmtpd/plugins/spamassassin
Xshare/qpsmtpd/plugins/tls
Xshare/qpsmtpd/plugins/tls_cert
Xshare/qpsmtpd/plugins/check_basicheaders
Xshare/qpsmtpd/plugins/check_badmailfrom
X at dirrm share/qpsmtpd/plugins/
X at dirrm share/qpsmtpd/
Xetc/rc.d/qpsmtpd
END-of-./p5-qpsmtpd/pkg-plist
echo x - ./p5-qpsmtpd/distinfo
sed 's/^X//' >./p5-qpsmtpd/distinfo << 'END-of-./p5-qpsmtpd/distinfo'
XMD5 (qpsmtpd-0.32.tar.gz) = ec4622643b7fd504676dadd3b238bcf5
XSHA256 (qpsmtpd-0.32.tar.gz) = 21ff3cd3a929dbcfe694fdfd6cb7f581e8e4dfcd3e56f0449c90a218200d1e0e
XSIZE (qpsmtpd-0.32.tar.gz) = 108080
END-of-./p5-qpsmtpd/distinfo
echo x - ./p5-qpsmtpd/pkg-descr
sed 's/^X//' >./p5-qpsmtpd/pkg-descr << 'END-of-./p5-qpsmtpd/pkg-descr'
XQpsmtpd started as a replacement daemon for the SMTP receiver (qmail-smtpd)
Xfrom the qmail mail transport agent (MTA). qmail-smtpd has a number of
Xshortcomings (e.g. being unable to check the validity of a recipient mail
Xaddress) and is written in C which makes it burdensome to modify and extend.
XQpsmtpd, on the other hand, is written in pure perl and can be customized
Xeasily. It consists of a core that implements a complete SMTP server, and a
Xnumber of plugins/modules which control the operations. Such plugins
Xinclude plugins to check the recipient and sender as well as plugins for
Xvirus scanning, spam checking, blocking lists (dns and rhs), AUTH and TLS.
XQpsmtpd can not only be used with qmail but also with e.g. postfix and
Xexim. It can also write messages to a Maildir or forward it to a remote
Xhost without buffering.
X
XWWW: http://smtpd.develooper.com/
END-of-./p5-qpsmtpd/pkg-descr
exit
--- p5-qpsmtpd.shar ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list