pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/mail/spamassassin



Module Name:    pkgsrc
Committed By:   hans
Date:           Fri Dec 16 15:52:52 UTC 2016

Modified Files:
        pkgsrc/mail/spamassassin: Makefile
Added Files:
        pkgsrc/mail/spamassassin/files/smf: manifest.xml spamassassin.sh

Log Message:
Add SMF manifest and method.


To generate a diff of this commit:
cvs rdiff -u -r1.127 -r1.128 pkgsrc/mail/spamassassin/Makefile
cvs rdiff -u -r0 -r1.1 pkgsrc/mail/spamassassin/files/smf/manifest.xml \
    pkgsrc/mail/spamassassin/files/smf/spamassassin.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/mail/spamassassin/Makefile
diff -u pkgsrc/mail/spamassassin/Makefile:1.127 pkgsrc/mail/spamassassin/Makefile:1.128
--- pkgsrc/mail/spamassassin/Makefile:1.127     Thu Nov 10 20:25:50 2016
+++ pkgsrc/mail/spamassassin/Makefile   Fri Dec 16 15:52:52 2016
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.127 2016/11/10 20:25:50 roy Exp $
+# $NetBSD: Makefile,v 1.128 2016/12/16 15:52:52 hans Exp $
 
 DISTNAME=      Mail-SpamAssassin-3.4.1
 PKGNAME=       spamassassin-3.4.1
-PKGREVISION=   5
+PKGREVISION=   6
 CATEGORIES=    mail perl5
 MASTER_SITES=  ${MASTER_SITE_APACHE:=spamassassin/source/}
 DISTFILES=     ${DISTNAME}${EXTRACT_SUFX}
@@ -18,6 +18,8 @@ LICENSE=      apache-2.0
 
 .include "../../mk/bsd.prefs.mk"
 
+SMF_METHODS=   spamassassin
+
 RULESARCHIVE=  Mail-SpamAssassin-rules-3.4.1.r1675274.tgz
 #RULESARCHIVEASC=${RULESARCHIVE}.asc
 #RULESARCHIVESHA=${RULESARCHIVE}.sha1

Added files:

Index: pkgsrc/mail/spamassassin/files/smf/manifest.xml
diff -u /dev/null pkgsrc/mail/spamassassin/files/smf/manifest.xml:1.1
--- /dev/null   Fri Dec 16 15:52:52 2016
+++ pkgsrc/mail/spamassassin/files/smf/manifest.xml     Fri Dec 16 15:52:52 2016
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<!--
+
+This file and its contents are supplied under the terms of the
+Common Development and Distribution License ("CDDL"), version 1.0.
+You may only use this file in accordance with the terms of version
+1.0 of the CDDL.
+A full copy of the text of the CDDL should have accompanied this
+source.  A copy of the CDDL is also available via the Internet at
+http://www.illumos.org/license/CDDL.
+
+-->
+<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
+<!--
+  Copyright 2016 Hans Rosenfeld <rosenfeld%grumpf.hope-2000.org@localhost>
+-->
+<service_bundle type='manifest' name='@SMF_NAME@'>
+  <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'>
+    <dependency name='filesystem_minimal' grouping='require_all' restart_on='none' type='service'>
+      <service_fmri value='svc:/system/filesystem/local' />
+    </dependency>
+    <dependency name='loopback' grouping='require_any' restart_on='error' type='service'>
+      <service_fmri value='svc:/network/loopback' />
+    </dependency>
+    <dependency name='network' grouping='optional_all' restart_on='error' type='service'>
+      <service_fmri value='svc:/milestone/network' />
+    </dependency>
+    <instance name='default' enabled='false'>
+      <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.spamassassin@ %m %i' timeout_seconds='60' />
+      <exec_method type='method' name='stop' exec=':kill' timeout_seconds='60' />
+      <!-- Default property settings for spamd(1) instance. -->
+      <property_group name='options' type='application'>
+        <!--   allow-tell: Allow learning/reporting -->
+        <propval name='allow-tell' type='boolean' value='false' />
+        <!--   listen-on: Listen on IP addr and port -->
+        <propval name='listen-on' type='astring' value='' />
+        <!--   allowed-ips: Restrict to IP addresses which can connect -->
+        <propval name='allowed-ips' type='astring' value='' />
+        <!--   max-children: maximum number of children -->
+        <propval name='max-children' type='integer' value='' />
+        <!--   user: Run as username -->
+        <propval name='user' type='astring' value='' />
+        <!--   local-only: Perform only local tests on all mail -->
+        <propval name='local-only' type='boolean' value='false' />
+        <!--   log-facility: syslog facility used for logging -->
+        <propval name='log-facility' type='astring' value='' />
+      </property_group>
+    </instance>
+    <stability value='Unstable' />
+    <template>
+      <common_name>
+        <loctext xml:lang='C'>Spamassassin</loctext>
+      </common_name>
+      <documentation>
+        <manpage title='spamd' section='1' manpath='@PREFIX@/@PKGMANDIR@' />
+      </documentation>
+    </template>
+  </service>
+</service_bundle>
Index: pkgsrc/mail/spamassassin/files/smf/spamassassin.sh
diff -u /dev/null pkgsrc/mail/spamassassin/files/smf/spamassassin.sh:1.1
--- /dev/null   Fri Dec 16 15:52:52 2016
+++ pkgsrc/mail/spamassassin/files/smf/spamassassin.sh  Fri Dec 16 15:52:52 2016
@@ -0,0 +1,79 @@
+#!@SMF_METHOD_SHELL@
+#
+# $NetBSD: spamassassin.sh,v 1.1 2016/12/16 15:52:52 hans Exp $
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source.  A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+# Copyright 2016 Hans Rosenfeld <rosenfeld%grumpf.hope-2000.org@localhost>
+#
+
+# smf_method(5) start/stop script required for spamassassin spamd
+
+. /lib/svc/share/smf_include.sh
+
+
+get_config ()
+{   
+    cmdopts=""
+    properties="allow-tell listen-on allowed-ips max-children user local-only
+       log-facility"
+
+    for prop in $properties
+    do
+        value=`/usr/bin/svcprop -p options/${prop} ${SMF_FMRI}`
+        if [ -z "${value}" -o "${value}" = '""' ]; then
+            continue;
+        fi
+
+        case $prop in
+        'allow-tell')
+            if [ ${value} = "true" ]; then
+                cmdopts="${cmdopts} --allow-tell"
+            fi
+            ;;
+        'listen-on')
+            cmdopts="${cmdopts} --listen=${value}"
+            ;;
+        'allowed-ips')
+            cmdopts="${cmdopts} --allowed-ips=${value}"
+            ;;
+        'max-children')
+            if [ ${value} -gt 0 ]; then
+                cmdopts="${cmdopts} --max-children=${value}"
+            fi
+            ;;
+        'user')
+            cmdopts="${cmdopts} --user=${value}"
+            ;;
+        'local-only')
+            if [ ${value} = "true" ]; then
+                cmdopts="${cmdopts} --local"
+            fi
+            ;;
+        'log-facility')
+            cmdopts="${cmdopts} --syslog=${value}"
+            ;;
+        esac
+    done
+}
+
+result=${SMF_EXIT_OK}
+
+# Set defaults; SMF_FMRI should have been set, but just in case.
+if [ -z "$SMF_FMRI" ]; then
+    SMF_FMRI="svc:/@SMF_PREFIX@/@SMF_NAME@:${instance}"
+fi
+
+get_config
+
+# Execute spamd with relevant command line options.
+ppriv -s A-all -s A+basic,net_privaddr,file_dac_read,file_dac_search,sys_resource,proc_setid -e @PREFIX@/bin/spamd -d --syslog-socket=native ${cmdopts}
+
+exit $?



Home | Main Index | Thread Index | Old Index