summaryrefslogtreecommitdiff
path: root/mail/postgrey
diff options
context:
space:
mode:
authorjperkin <jperkin>2014-03-11 14:34:36 +0000
committerjperkin <jperkin>2014-03-11 14:34:36 +0000
commit3a3589b1ca6f624f598add65f202c375e8c745c2 (patch)
tree7ee5b13abb9f96749121a307db970b8b85e953da /mail/postgrey
parent9427ef4553604155e5a203ff6ddd2f23d9cc16e8 (diff)
downloadpkgsrc-3a3589b1ca6f624f598add65f202c375e8c745c2.tar.gz
Import initial SMF support for individual packages.
Diffstat (limited to 'mail/postgrey')
-rw-r--r--mail/postgrey/Makefile5
-rw-r--r--mail/postgrey/files/smf/manifest.xml51
2 files changed, 55 insertions, 1 deletions
diff --git a/mail/postgrey/Makefile b/mail/postgrey/Makefile
index 22bde8673a7..e0bd5ea158e 100644
--- a/mail/postgrey/Makefile
+++ b/mail/postgrey/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.39 2013/08/21 16:15:58 wiz Exp $
+# $NetBSD: Makefile,v 1.40 2014/03/11 14:34:38 jperkin Exp $
DISTNAME= postgrey-1.34
CATEGORIES= mail
@@ -47,6 +47,9 @@ OWN_DIRS_PERMS+= ${POSTGREY_DBDIR} \
${POSTGREY_USER} ${POSTGREY_GROUP} 0775
FILES_SUBST+= PERL=${PERL5:Q}
+FILES_SUBST+= POSTGREY_USER=${POSTGREY_USER}
+FILES_SUBST+= POSTGREY_GROUP=${POSTGREY_GROUP}
+FILES_SUBST+= POSTGREY_DBDIR=${POSTGREY_DBDIR}
SUBST_CLASSES+= postgrey
SUBST_STAGE.postgrey= pre-build
diff --git a/mail/postgrey/files/smf/manifest.xml b/mail/postgrey/files/smf/manifest.xml
new file mode 100644
index 00000000000..eeff27af2b2
--- /dev/null
+++ b/mail/postgrey/files/smf/manifest.xml
@@ -0,0 +1,51 @@
+<?xml version='1.0'?>
+<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>
+<service_bundle type='manifest' name='@SMF_NAME@'>
+ <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'>
+ <create_default_instance enabled="false" />
+ <single_instance />
+ <dependency name='fs-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local' />
+ </dependency>
+ <dependency name='loopback' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/network/loopback:default' />
+ </dependency>
+ <dependency name='physical' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/network/physical:default' />
+ </dependency>
+ <dependency name='name-services' grouping='require_all' restart_on='refresh' type='service'>
+ <service_fmri value='svc:/milestone/name-services' />
+ </dependency>
+ <dependency name='system-log' grouping='optional_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/system-log' />
+ </dependency>
+ <dependency name='config-file' grouping='require_all' restart_on='none' type='path'>
+ <service_fmri value='file://@PKG_SYSCONFDIR@/postgrey_whitelist_clients' />
+ </dependency>
+ <method_context working_directory='@POSTGREY_DBDIR@'>
+ <method_credential user='@POSTGREY_USER@' group='@POSTGREY_GROUP@' />
+ </method_context>
+ <exec_method name='start' type='method' exec='@PREFIX@/sbin/postgrey --daemonize --privacy --inet=%{postgrey/port} %{postgrey/targrey} --tarpit=%{postgrey/tarpit} --pidfile=@POSTGREY_DBDIR@/postgrey.pid --greylist-action=%{postgrey/action} --greylist-text=%{postgrey/text} --delay=%{postgrey/delay} --max-age=%{postgrey/maxage} --retry-window=%{postgrey/retry}' timeout_seconds='30' />
+ <exec_method name='stop' type='method' exec=':kill' timeout_seconds='30' />
+ <property_group name='postgrey' type='application'>
+ <propval name='port' type='integer' value='10025'/>
+ <propval name='targrey' type='astring' value='--targrey'/>
+ <propval name='tarpit' type='integer' value='35'/>
+ <propval name='maxage' type='integer' value='35'/>
+ <propval name='delay' type='integer' value='300'/>
+ <propval name='retry' type='integer' value='2'/>
+ <propval name='action' type='astring' value='DEFER_IF_PERMIT'/>
+ <propval name='text' type='astring' value='Policy restrictions; try later'/>
+ </property_group>
+ <stability value='Unstable' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>Postgrey Greylisting for Postfix</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='postgrey' section='1' />
+ <doc_link name='postgrey website' uri='http://postgrey.schweikert.ch' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>