# $Id: Portfile 50984 2009-05-14 21:08:43Z and.damore@macports.org $ PortSystem 1.0 name postgrey version 1.31 revision 2 categories mail maintainers sky.fr:cbellot description Postfix policy server implementing greylisting long_description When a request for delivery of a mail is received by \ Postfix via SMTP, the triplet CLIENT_IP / SENDER / RECIPIENT \ is built. If it is the first time that this triplet is seen, \ or if the triplet was first seen, less than 5 minutes ago, \ then the mail gets rejected with a temporary error. Hopefully\ spammers or viruses will not try again later, as it is \ however required per RFC. platforms darwin homepage http://postgrey.schweikert.ch/ master_sites ${homepage}pub \ ${homepage}pub/old checksums md5 b7a8a6fc9f1ad802c5a516a3be34bb29 build.target depends_lib-append port:p5-io-multiplex depends_lib-append port:p5-net-server depends_lib-append port:p5-berkeleydb startupitem.create yes startupitem.start "${prefix}/share/postgrey/postgrey.sh start" startupitem.stop "${prefix}/share/postgrey/postgrey.sh stop" configure { system "echo all: > ${worksrcpath}/Makefile" reinplace "s|/usr/bin/perl|${prefix}/bin/perl|g" \ ${worksrcpath}/postgrey \ ${worksrcpath}/contrib/postgreyreport reinplace "s|/etc/postfix|${prefix}/etc/postgrey|g" \ ${worksrcpath}/postgrey \ ${worksrcpath}/postgrey_whitelist_clients \ ${worksrcpath}/postgrey_whitelist_recipients \ ${worksrcpath}/contrib/postgreyreport reinplace "s|/etc/main.cf|postfix's main.cf|g" \ ${worksrcpath}/postgrey reinplace "s|/var/spool/postfix/postgrey|${prefix}/var/spool/postgrey|g" \ ${worksrcpath}/postgrey \ ${worksrcpath}/contrib/postgreyreport } destroot { adduser postgrey realname=Postgrey\ Server addgroup postgrey file mkdir ${destroot}${prefix}/etc/postgrey file mkdir ${destroot}${prefix}/share/postgrey file mkdir ${destroot}${prefix}/share/doc/postgrey file mkdir ${destroot}${prefix}/share/man/man1 file mkdir ${destroot}${prefix}/share/man/man8 xinstall -d -o postgrey -g postgrey -m 750 \ ${destroot}${prefix}/var/spool/postgrey xinstall -d -o postgrey -g postgrey -m 750 \ ${destroot}${prefix}/var/run/postgrey destroot.keepdirs ${destroot}${prefix}/var/spool/postgrey \ ${destroot}${prefix}/var/run/postgrey \ ${destroot}${prefix}/etc/postgrey system "pod2man --section=8 ${worksrcpath}/postgrey > \ ${destroot}${prefix}/share/man/man8/postgrey.8" system "pod2man --section=1 ${worksrcpath}/contrib/postgreyreport > \ ${destroot}${prefix}/share/man/man1/postgreyreport.1" xinstall -m 755 -c ${worksrcpath}/contrib/postgreyreport \ ${destroot}${prefix}/bin/postgreyreport xinstall -m 644 -c ${worksrcpath}/README \ ${worksrcpath}/README.exim \ ${worksrcpath}/Changes \ ${worksrcpath}/COPYING \ ${destroot}${prefix}/share/doc/postgrey xinstall -m 644 -c ${portpath}/files/postgrey.conf \ ${destroot}${prefix}/etc/postgrey/postgrey.conf.sample xinstall -m 755 -c ${portpath}/files/postgrey.sh \ ${destroot}${prefix}/share/postgrey reinplace "s|__PREFIX|${prefix}|g" \ ${destroot}${prefix}/share/postgrey/postgrey.sh xinstall -m 4755 -o postgrey -g postgrey -c \ ${worksrcpath}/postgrey \ ${destroot}${prefix}/sbin/postgrey xinstall -m 644 -c \ ${worksrcpath}/postgrey_whitelist_clients \ ${destroot}${prefix}/etc/postgrey xinstall -m 644 -c \ ${worksrcpath}/postgrey_whitelist_recipients \ ${destroot}${prefix}/etc/postgrey/postgrey_whitelist_recipients.default } post-install { ui_msg "\n Postgrey will be running with following default parameters: user : postgrey group : postgrey tcp binding : localhost tcp port : 60000 You will find configuration in ${prefix}/etc/postgrey postgrey.conf : launch options postgrey_whitelist_clients : default clients whitelist postgrey_whitelist_clients.local : customisable clients whitelist postgrey_whitelist_recipients : customisable recipients whitelist postgrey_whitelist_recipients.default : default recipients whitelist (unused) If you are using postfix, you should add to your main.cf a line: check_policy_service inet:127.0.0.1:60000 in the smtpd_recipient_restrictions configuration (after reject_unauth_destination and other rules) and reload postfix daemon. \n" }