summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chat/ejabberd/Makefile4
-rw-r--r--chat/ejabberd/files/smf/manifest.xml39
-rw-r--r--chat/spectrum/files/smf/manifest.xml32
-rw-r--r--databases/apache-cassandra/Makefile3
-rw-r--r--databases/apache-cassandra/files/smf/manifest.xml34
-rw-r--r--databases/couchdb/Makefile6
-rw-r--r--databases/couchdb/files/smf/manifest.xml39
-rw-r--r--databases/mysql51-server/Makefile4
-rw-r--r--databases/mysql51-server/files/smf/manifest.xml32
-rw-r--r--databases/mysql51-server/files/smf/mysqld.sh31
-rw-r--r--databases/mysql55-server/Makefile4
-rw-r--r--databases/mysql55-server/files/smf/manifest.xml32
-rw-r--r--databases/mysql55-server/files/smf/mysqld.sh31
-rw-r--r--databases/mysql56-server/Makefile4
-rw-r--r--databases/mysql56-server/files/smf/manifest.xml32
-rw-r--r--databases/mysql56-server/files/smf/mysqld.sh31
-rw-r--r--databases/postgresql84-server/Makefile4
-rw-r--r--databases/postgresql84-server/files/smf/manifest.xml37
-rw-r--r--databases/postgresql84-server/files/smf/postgresql.sh57
-rw-r--r--databases/postgresql90-server/Makefile4
-rw-r--r--databases/postgresql90-server/files/smf/manifest.xml37
-rw-r--r--databases/postgresql90-server/files/smf/postgresql.sh57
-rw-r--r--databases/postgresql91-server/Makefile4
-rw-r--r--databases/postgresql91-server/files/smf/manifest.xml37
-rw-r--r--databases/postgresql91-server/files/smf/postgresql.sh57
-rw-r--r--databases/postgresql92-server/Makefile4
-rw-r--r--databases/postgresql92-server/files/smf/manifest.xml37
-rw-r--r--databases/postgresql92-server/files/smf/postgresql.sh57
-rw-r--r--databases/postgresql93-server/Makefile4
-rw-r--r--databases/postgresql93-server/files/smf/manifest.xml37
-rw-r--r--databases/postgresql93-server/files/smf/postgresql.sh57
-rw-r--r--databases/redis/Makefile4
-rw-r--r--databases/redis/files/smf/manifest.xml32
-rw-r--r--devel/memcached/Makefile3
-rw-r--r--devel/memcached/files/smf/manifest.xml34
-rw-r--r--lang/erlang/Makefile4
-rw-r--r--lang/erlang/files/smf/manifest.xml30
-rw-r--r--mail/amavisd-new/Makefile3
-rw-r--r--mail/amavisd-new/files/smf/manifest.xml39
-rw-r--r--mail/courier-imap/Makefile3
-rw-r--r--mail/courier-imap/files/smf/courier-imap.sh122
-rw-r--r--mail/courier-imap/files/smf/manifest.xml43
-rw-r--r--mail/dovecot/files/smf/manifest.xml34
-rw-r--r--mail/dovecot2/Makefile3
-rw-r--r--mail/dovecot2/files/smf/manifest.xml34
-rw-r--r--mail/mailman/files/smf/manifest.xml27
-rw-r--r--mail/postfix/files/smf/manifest.xml43
-rw-r--r--mail/postgrey/Makefile5
-rw-r--r--mail/postgrey/files/smf/manifest.xml51
-rw-r--r--mail/sendmail/files/smf/manifest.xml41
-rw-r--r--net/bind98/Makefile3
-rw-r--r--net/bind98/files/smf/manifest.xml141
-rw-r--r--net/bind98/files/smf/named.sh117
-rw-r--r--net/bind99/Makefile3
-rw-r--r--net/bind99/files/smf/manifest.xml141
-rw-r--r--net/bind99/files/smf/named.sh117
-rw-r--r--net/dnsmasq/files/smf/manifest.xml38
-rw-r--r--net/haproxy/files/smf/manifest.xml29
-rw-r--r--net/mDNSResponder/files/smf/manifest.xml30
-rw-r--r--net/nagios-base/Makefile5
-rw-r--r--net/nagios-base/files/smf/manifest.xml32
-rw-r--r--net/nagios-nrpe/Makefile6
-rw-r--r--net/nagios-nrpe/files/smf/manifest.xml33
-rw-r--r--net/net-snmp/Makefile3
-rw-r--r--net/net-snmp/files/smf/manifest.xml45
-rw-r--r--net/proftpd/files/smf/manifest.xml33
-rw-r--r--net/rabbitmq/Makefile6
-rw-r--r--net/rabbitmq/files/smf/manifest.xml36
-rw-r--r--net/rsync/Makefile3
-rw-r--r--net/rsync/files/smf/manifest.xml29
-rw-r--r--net/spread/files/smf/manifest.xml35
-rw-r--r--security/clamav/Makefile13
-rw-r--r--security/clamav/distinfo5
-rw-r--r--security/clamav/files/smf/clamd.sh30
-rw-r--r--security/clamav/files/smf/freshclamd.sh28
-rw-r--r--security/clamav/files/smf/manifest.xml57
-rw-r--r--security/clamav/patches/patch-etc_clamd.conf.sample33
-rw-r--r--security/clamav/patches/patch-etc_freshclam.conf.sample15
-rw-r--r--security/courier-authlib/files/smf/manifest.xml37
-rw-r--r--security/openssh/Makefile3
-rw-r--r--security/openssh/files/smf/manifest.xml47
-rw-r--r--security/openssh/files/smf/sshd.sh68
-rw-r--r--security/py-denyhosts/Makefile3
-rw-r--r--security/py-denyhosts/files/smf/manifest.xml31
-rw-r--r--sysutils/munin-node/Makefile3
-rw-r--r--sysutils/munin-node/files/smf/manifest.xml37
-rw-r--r--www/apache-tomcat6/Makefile3
-rw-r--r--www/apache-tomcat6/files/smf/manifest.xml35
-rw-r--r--www/apache-tomcat7/Makefile3
-rw-r--r--www/apache-tomcat7/files/smf/manifest.xml35
-rw-r--r--www/apache22/files/smf/manifest.xml38
-rw-r--r--www/apache24/files/smf/manifest.xml38
-rw-r--r--www/lighttpd/files/smf/manifest.xml34
-rw-r--r--www/nginx-devel/files/smf/manifest.xml35
-rw-r--r--www/nginx/files/smf/manifest.xml35
-rw-r--r--www/php-fpm/Makefile3
-rw-r--r--www/php-fpm/files/smf/manifest.xml30
-rw-r--r--www/varnish/Makefile5
-rw-r--r--www/varnish/files/smf/manifest.xml36
99 files changed, 2992 insertions, 36 deletions
diff --git a/chat/ejabberd/Makefile b/chat/ejabberd/Makefile
index 96f7f68ee24..64928733804 100644
--- a/chat/ejabberd/Makefile
+++ b/chat/ejabberd/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.38 2014/03/10 11:35:07 fhajny Exp $
+# $NetBSD: Makefile,v 1.39 2014/03/11 14:34:36 jperkin Exp $
DISTNAME= ejabberd-13.12
CATEGORIES= chat
@@ -54,6 +54,8 @@ OWN_DIRS_PERMS+= ${EJABBERD_DB} ${EJABBERD_USER} ${EJABBERD_GROUP} 0770
FILES_SUBST+= DISTNAME=${DISTNAME}
FILES_SUBST+= EJABBERD_USER=${EJABBERD_USER}
+FILES_SUBST+= EJABBERD_GROUP=${EJABBERD_GROUP}
+FILES_SUBST+= EJABBERD_DB=${EJABBERD_DB}
PLIST_SUBST+= DISTNAME=${DISTNAME}
PLIST_SUBST+= EJABBERD_EXDIR=${EJABBERD_EXDIR}
diff --git a/chat/ejabberd/files/smf/manifest.xml b/chat/ejabberd/files/smf/manifest.xml
new file mode 100644
index 00000000000..e14a37c4c17
--- /dev/null
+++ b/chat/ejabberd/files/smf/manifest.xml
@@ -0,0 +1,39 @@
+<?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='network-service' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/service' />
+ </dependency>
+ <dependency name='system-log' grouping='optional_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/system-log' />
+ </dependency>
+ <dependency name='config-files' grouping='require_any' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/ejabberd.cfg' />
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/ejabberctl.cfg' />
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/inetrc' />
+ </dependency>
+ <dependency name='@SMF_NAME@-epmd' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/@SMF_PREFIX@/epmd' />
+ </dependency>
+ <method_context working_directory='@EJABBERD_DB@'>
+ <method_credential user='@EJABBERD_USER@' group='@EJABBERD_GROUP@' />
+ </method_context>
+ <exec_method name='start' type='method' exec='@PREFIX@/sbin/ejabberdctl start' timeout_seconds='120' />
+ <exec_method name='stop' type='method' exec='@PREFIX@/sbin/ejabberdctl stop' timeout_seconds='60' />
+ <property_group name='startd' type='framework'>
+ <propval name='ignore_error' type='astring' value='core,signal' />
+ </property_group>
+ <stability value='Unstable' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>ejabberd - the Erlang Jabber/XMPP daemon</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/chat/spectrum/files/smf/manifest.xml b/chat/spectrum/files/smf/manifest.xml
new file mode 100644
index 00000000000..7fbe9636f09
--- /dev/null
+++ b/chat/spectrum/files/smf/manifest.xml
@@ -0,0 +1,32 @@
+<?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">
+ <dependency name="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <instance name="default" enabled="false">
+ <method_context>
+ <method_credential user="@JABBER_USER@" group="@JABBER_GROUP@" />
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/bin/spectrum %{config_file}" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/spectrum.cfg" />
+ </property_group>
+ </instance>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Spectrum XMPP gateway</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/apache-cassandra/Makefile b/databases/apache-cassandra/Makefile
index deb28adf435..0e2722c4506 100644
--- a/databases/apache-cassandra/Makefile
+++ b/databases/apache-cassandra/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.15 2014/02/14 10:25:23 fhajny Exp $
+# $NetBSD: Makefile,v 1.16 2014/03/11 14:34:36 jperkin Exp $
#
DISTNAME= apache-cassandra-${CASSANDRA_VER}
@@ -29,6 +29,7 @@ EGDIR= ${PREFIX}/share/examples/cassandra
DOCDIR= ${PREFIX}/share/doc/cassandra
RCD_SCRIPTS= cassandra
+SMF_NAME= cassandra
CASSANDRA_USER?= cassandra
CASSANDRA_GROUP?= cassandra
PKG_GROUPS= ${CASSANDRA_GROUP}
diff --git a/databases/apache-cassandra/files/smf/manifest.xml b/databases/apache-cassandra/files/smf/manifest.xml
new file mode 100644
index 00000000000..bde53db7bfb
--- /dev/null
+++ b/databases/apache-cassandra/files/smf/manifest.xml
@@ -0,0 +1,34 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context project="@SMF_NAME@" working_directory="@CASSANDRA_HOME@">
+ <method_credential user="@CASSANDRA_USER@" group="@CASSANDRA_GROUP@" />
+ <method_environment>
+ <envvar name="JAVA_HOME" value="@PREFIX@/java/sun6" />
+ <envvar name="JVM_OPTS" value="-d64" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/share/cassandra/bin/cassandra -p @VARBASE@/lib/cassandra/cassandra.pid" timeout_seconds="600" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application"></property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Apache Cassandra</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/couchdb/Makefile b/databases/couchdb/Makefile
index e5effe55843..740af46ad3a 100644
--- a/databases/couchdb/Makefile
+++ b/databases/couchdb/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.23 2014/02/12 23:17:38 tron Exp $
+# $NetBSD: Makefile,v 1.24 2014/03/11 14:34:36 jperkin Exp $
#
DISTNAME= apache-couchdb-1.5.0
@@ -42,6 +42,10 @@ COUCH_RUNDIR?= ${VARBASE}/spool/couchdb
COUCH_RUNDIR?= ${VARBASE}/run/couchdb
.endif
+FILES_SUBST+= COUCH_USER=${COUCH_USER}
+FILES_SUBST+= COUCH_GROUP=${COUCH_GROUP}
+FILES_SUBST+= COUCH_DBDIR=${COUCH_DBDIR}
+
OWN_DIRS= ${COUCH_LOGDIR} ${COUCH_DBDIR} ${COUCH_RUNDIR} ${PKG_SYSCONFDIR}
OWN_DIRS_PERMS+= ${COUCH_DBDIR} ${COUCH_USER} ${COUCH_GROUP} 0770
OWN_DIRS_PERMS+= ${COUCH_LOGDIR} ${COUCH_USER} ${COUCH_GROUP} 0770
diff --git a/databases/couchdb/files/smf/manifest.xml b/databases/couchdb/files/smf/manifest.xml
new file mode 100644
index 00000000000..a65ea028553
--- /dev/null
+++ b/databases/couchdb/files/smf/manifest.xml
@@ -0,0 +1,39 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <dependency name='@SMF_NAME@-epmd' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/@SMF_PREFIX@/epmd' />
+ </dependency>
+ <method_context working_directory="@COUCH_DBDIR@">
+ <method_credential user="@COUCH_USER@" group="@COUCH_GROUP@" />
+ <method_environment>
+ <envvar name="PATH" value="@PREFIX@/sbin:@PREFIX@/bin:/sbin:/usr/sbin:/usr/bin" />
+ <envvar name="HOME" value="@COUCH_DBDIR@" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/bin/couchdb -b" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/local.ini" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">CouchDB server</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/mysql51-server/Makefile b/databases/mysql51-server/Makefile
index 12f0fd1345f..4a54acadeba 100644
--- a/databases/mysql51-server/Makefile
+++ b/databases/mysql51-server/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.19 2014/02/12 23:17:39 tron Exp $
+# $NetBSD: Makefile,v 1.20 2014/03/11 14:34:36 jperkin Exp $
PKGNAME= ${DISTNAME:S/-/-server-/}
PKGREVISION= 1
@@ -52,6 +52,8 @@ PKG_HOME.${MYSQL_USER}= ${MYSQL_DATADIR}
PKG_SHELL.${MYSQL_USER}= ${SH}
RCD_SCRIPTS= mysqld
+SMF_NAME= mysql
+SMF_METHODS= ${RCD_SCRIPTS}
FILES_SUBST+= HOSTNAME_CMD=${HOSTNAME_CMD:Q} \
MYSQL_DATADIR=${MYSQL_DATADIR} \
diff --git a/databases/mysql51-server/files/smf/manifest.xml b/databases/mysql51-server/files/smf/manifest.xml
new file mode 100644
index 00000000000..c84a56cf2f5
--- /dev/null
+++ b/databases/mysql51-server/files/smf/manifest.xml
@@ -0,0 +1,32 @@
+<?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' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local' />
+ </dependency>
+ <dependency name='net' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/loopback' />
+ </dependency>
+ <method_context project='mysql' working_directory='@MYSQL_DATADIR@'>
+ <method_credential user='@MYSQL_USER@' group='@MYSQL_GROUP@' />
+ <method_environment>
+ <envvar name='LD_PRELOAD_32' value='/usr/lib/extendedFILE.so.1' />
+ </method_environment>
+ </method_context>
+ <exec_method name='start' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ start' timeout_seconds='18446744073709551615' />
+ <exec_method name='stop' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ stop' timeout_seconds='18446744073709551615' />
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>MySQL RDBMS</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='MySQL 5.1' section='1' />
+ <doc_link name='mysql.com' uri='http://dev.mysql.com/docs' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/mysql51-server/files/smf/mysqld.sh b/databases/mysql51-server/files/smf/mysqld.sh
new file mode 100644
index 00000000000..ebc19be01e6
--- /dev/null
+++ b/databases/mysql51-server/files/smf/mysqld.sh
@@ -0,0 +1,31 @@
+#!@SMF_METHOD_SHELL@
+#
+# $NetBSD: mysqld.sh,v 1.1 2014/03/11 14:34:36 jperkin Exp $
+#
+# Init script for mysqld.
+#
+
+. /lib/svc/share/smf_include.sh
+
+PIDFILE="@MYSQL_DATADIR@/mysql.pid"
+
+ulimit -n 10240
+
+case "$1" in
+start)
+ @LOCALBASE@/sbin/mysqld --user=mysql \
+ --basedir=@LOCALBASE@ \
+ --datadir=@MYSQL_DATADIR@ \
+ --pid-file=${PIDFILE} \
+ --log-error=@VARBASE@/log/mysql/error.log &
+ ;;
+stop)
+ [ -f ${PIDFILE} ] && kill `@HEAD@ -1 ${PIDFILE}`
+ ;;
+*)
+ echo "Usage: $0 {start|stop}" >&2
+ exit 1
+ ;;
+esac
+
+exit $SMF_EXIT_OK
diff --git a/databases/mysql55-server/Makefile b/databases/mysql55-server/Makefile
index 44756148a0f..9f6d0357a0c 100644
--- a/databases/mysql55-server/Makefile
+++ b/databases/mysql55-server/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.18 2014/02/12 23:17:39 tron Exp $
+# $NetBSD: Makefile,v 1.19 2014/03/11 14:34:36 jperkin Exp $
PKGNAME= ${DISTNAME:S/-/-server-/}
PKGREVISION= 1
@@ -45,6 +45,8 @@ PKG_HOME.${MYSQL_USER}= ${MYSQL_DATADIR}
PKG_SHELL.${MYSQL_USER}= ${SH}
RCD_SCRIPTS= mysqld
+SMF_NAME= mysql
+SMF_METHODS= ${RCD_SCRIPTS}
FILES_SUBST+= HOSTNAME_CMD=${HOSTNAME_CMD:Q}
FILES_SUBST+= MYSQL_DATADIR=${MYSQL_DATADIR}
diff --git a/databases/mysql55-server/files/smf/manifest.xml b/databases/mysql55-server/files/smf/manifest.xml
new file mode 100644
index 00000000000..324044fd143
--- /dev/null
+++ b/databases/mysql55-server/files/smf/manifest.xml
@@ -0,0 +1,32 @@
+<?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' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local' />
+ </dependency>
+ <dependency name='net' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/loopback' />
+ </dependency>
+ <method_context project='mysql' working_directory='@MYSQL_DATADIR@'>
+ <method_credential user='@MYSQL_USER@' group='@MYSQL_GROUP@' />
+ <method_environment>
+ <envvar name='LD_PRELOAD_32' value='/usr/lib/extendedFILE.so.1' />
+ </method_environment>
+ </method_context>
+ <exec_method name='start' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ start' timeout_seconds='18446744073709551615' />
+ <exec_method name='stop' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ stop' timeout_seconds='18446744073709551615' />
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>MySQL RDBMS</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='MySQL 5.5' section='1' />
+ <doc_link name='mysql.com' uri='http://dev.mysql.com/docs' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/mysql55-server/files/smf/mysqld.sh b/databases/mysql55-server/files/smf/mysqld.sh
new file mode 100644
index 00000000000..ebc19be01e6
--- /dev/null
+++ b/databases/mysql55-server/files/smf/mysqld.sh
@@ -0,0 +1,31 @@
+#!@SMF_METHOD_SHELL@
+#
+# $NetBSD: mysqld.sh,v 1.1 2014/03/11 14:34:36 jperkin Exp $
+#
+# Init script for mysqld.
+#
+
+. /lib/svc/share/smf_include.sh
+
+PIDFILE="@MYSQL_DATADIR@/mysql.pid"
+
+ulimit -n 10240
+
+case "$1" in
+start)
+ @LOCALBASE@/sbin/mysqld --user=mysql \
+ --basedir=@LOCALBASE@ \
+ --datadir=@MYSQL_DATADIR@ \
+ --pid-file=${PIDFILE} \
+ --log-error=@VARBASE@/log/mysql/error.log &
+ ;;
+stop)
+ [ -f ${PIDFILE} ] && kill `@HEAD@ -1 ${PIDFILE}`
+ ;;
+*)
+ echo "Usage: $0 {start|stop}" >&2
+ exit 1
+ ;;
+esac
+
+exit $SMF_EXIT_OK
diff --git a/databases/mysql56-server/Makefile b/databases/mysql56-server/Makefile
index 11b069d43f5..c734bd677a4 100644
--- a/databases/mysql56-server/Makefile
+++ b/databases/mysql56-server/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.13 2014/02/13 07:49:56 adam Exp $
+# $NetBSD: Makefile,v 1.14 2014/03/11 14:34:36 jperkin Exp $
PKGNAME= ${DISTNAME:S/-/-server-/}
SVR4_PKGNAME= mysqs
@@ -45,6 +45,8 @@ PKG_HOME.${MYSQL_USER}= ${MYSQL_DATADIR}
PKG_SHELL.${MYSQL_USER}= ${SH}
RCD_SCRIPTS= mysqld
+SMF_NAME= mysql
+SMF_METHODS= ${RCD_SCRIPTS}
FILES_SUBST+= HOSTNAME_CMD=${HOSTNAME_CMD:Q}
FILES_SUBST+= MYSQL_DATADIR=${MYSQL_DATADIR}
diff --git a/databases/mysql56-server/files/smf/manifest.xml b/databases/mysql56-server/files/smf/manifest.xml
new file mode 100644
index 00000000000..675e0079a6e
--- /dev/null
+++ b/databases/mysql56-server/files/smf/manifest.xml
@@ -0,0 +1,32 @@
+<?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' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local' />
+ </dependency>
+ <dependency name='net' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/loopback' />
+ </dependency>
+ <method_context project='mysql' working_directory='@MYSQL_DATADIR@'>
+ <method_credential user='@MYSQL_USER@' group='@MYSQL_GROUP@' />
+ <method_environment>
+ <envvar name='LD_PRELOAD_32' value='/usr/lib/extendedFILE.so.1' />
+ </method_environment>
+ </method_context>
+ <exec_method name='start' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ start' timeout_seconds='18446744073709551615' />
+ <exec_method name='stop' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ stop' timeout_seconds='18446744073709551615' />
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>MySQL RDBMS</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='MySQL 5.6' section='1' />
+ <doc_link name='mysql.com' uri='http://dev.mysql.com/docs' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/mysql56-server/files/smf/mysqld.sh b/databases/mysql56-server/files/smf/mysqld.sh
new file mode 100644
index 00000000000..ebc19be01e6
--- /dev/null
+++ b/databases/mysql56-server/files/smf/mysqld.sh
@@ -0,0 +1,31 @@
+#!@SMF_METHOD_SHELL@
+#
+# $NetBSD: mysqld.sh,v 1.1 2014/03/11 14:34:36 jperkin Exp $
+#
+# Init script for mysqld.
+#
+
+. /lib/svc/share/smf_include.sh
+
+PIDFILE="@MYSQL_DATADIR@/mysql.pid"
+
+ulimit -n 10240
+
+case "$1" in
+start)
+ @LOCALBASE@/sbin/mysqld --user=mysql \
+ --basedir=@LOCALBASE@ \
+ --datadir=@MYSQL_DATADIR@ \
+ --pid-file=${PIDFILE} \
+ --log-error=@VARBASE@/log/mysql/error.log &
+ ;;
+stop)
+ [ -f ${PIDFILE} ] && kill `@HEAD@ -1 ${PIDFILE}`
+ ;;
+*)
+ echo "Usage: $0 {start|stop}" >&2
+ exit 1
+ ;;
+esac
+
+exit $SMF_EXIT_OK
diff --git a/databases/postgresql84-server/Makefile b/databases/postgresql84-server/Makefile
index 9a5096a7203..1ad7212cdef 100644
--- a/databases/postgresql84-server/Makefile
+++ b/databases/postgresql84-server/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.25 2014/02/23 11:25:51 adam Exp $
+# $NetBSD: Makefile,v 1.26 2014/03/11 14:34:37 jperkin Exp $
PKGNAME= ${DISTNAME:C/-/84-server-/}
COMMENT= PostgreSQL database server programs
@@ -60,6 +60,8 @@ PKG_GECOS.${PGUSER}= PostgreSQL database administrator
PKG_HOME.${PGUSER}= ${PGHOME}
RCD_SCRIPTS= pgsql
+SMF_METHODS= postgresql
+SMF_NAME= postgresql
.include "../../databases/postgresql84-client/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
diff --git a/databases/postgresql84-server/files/smf/manifest.xml b/databases/postgresql84-server/files/smf/manifest.xml
new file mode 100644
index 00000000000..2e9972f4bd3
--- /dev/null
+++ b/databases/postgresql84-server/files/smf/manifest.xml
@@ -0,0 +1,37 @@
+<?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'>
+ <dependency name='network' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <method_context project='postgres'>
+ <method_credential user='@PGUSER@' group='@PGGROUP@' />
+ <method_environment>
+ <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" />
+ </method_environment>
+ </method_context>
+ <instance name='@SMF_INSTANCE@' enabled='false'>
+ <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ start' timeout_seconds='300' />
+ <exec_method type='method' name='stop' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ stop' timeout_seconds='300' />
+ <exec_method type='method' name='refresh' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ refresh' timeout_seconds='60' />
+ <property_group name='config' type='application'>
+ <propval name='data' type='astring' value='@PGHOME@/data84' />
+ <propval name='log' type='astring' value='@PGLOGFILE@' />
+ </property_group>
+ </instance>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>PostgreSQL RDBMS</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='postgres' section='1M' />
+ <doc_link name='postgresql.org' uri='http://postgresql.org' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/postgresql84-server/files/smf/postgresql.sh b/databases/postgresql84-server/files/smf/postgresql.sh
new file mode 100644
index 00000000000..4b3d4d19cf9
--- /dev/null
+++ b/databases/postgresql84-server/files/smf/postgresql.sh
@@ -0,0 +1,57 @@
+#!/sbin/sh
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+# ident "%Z%%M% %I% %E SMI"
+. /lib/svc/share/smf_include.sh
+
+# SMF_FMRI is the name of the target service. This allows multiple instances
+# to use the same script.
+
+getproparg()
+{ val=`svcprop -p $1 $SMF_FMRI`
+ [ -n "$val" ] && echo $val
+}
+
+PGBIN=@PREFIX@/bin
+PGDATA=`getproparg config/data`
+PGLOG=`getproparg config/log`
+
+if [ -z $SMF_FMRI ]; then
+ echo "SMF framework variables are not initialized."
+ exit $SMF_EXIT_ERR
+fi
+
+if [ -z $PGDATA ]; then
+
+ echo "postgresql/data property not set"
+ exit $SMF_EXIT_ERR_CONFIG
+fi
+
+if [ -z $PGLOG ]; then
+
+ echo "postgresql/log property not set"
+ exit $SMF_EXIT_ERR_CONFIG
+fi
+
+case "$1" in
+'start')
+ ulimit -n 10240
+ $PGBIN/pg_ctl -D $PGDATA -l $PGLOG start
+ ;;
+
+'stop')
+ $PGBIN/pg_ctl -D $PGDATA stop
+ ;;
+
+'refresh')
+ $PGBIN/pg_ctl -D $PGDATA reload
+ ;;
+*)
+
+ echo $"Usage: $0 {start|refresh}"
+ exit 1
+ ;;
+
+esac
+exit $SMF_EXIT_OK
diff --git a/databases/postgresql90-server/Makefile b/databases/postgresql90-server/Makefile
index 14d0b26bf32..f6e49923837 100644
--- a/databases/postgresql90-server/Makefile
+++ b/databases/postgresql90-server/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.20 2014/02/23 11:25:51 adam Exp $
+# $NetBSD: Makefile,v 1.21 2014/03/11 14:34:37 jperkin Exp $
PKGNAME= ${DISTNAME:C/-/90-server-/}
COMMENT= PostgreSQL database server programs
@@ -63,6 +63,8 @@ PKG_GECOS.${PGUSER}= PostgreSQL database administrator
PKG_HOME.${PGUSER}= ${PGHOME}
RCD_SCRIPTS= pgsql
+SMF_NAME= postgresql
+SMF_METHODS= postgresql
.include "../../databases/postgresql90-client/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
diff --git a/databases/postgresql90-server/files/smf/manifest.xml b/databases/postgresql90-server/files/smf/manifest.xml
new file mode 100644
index 00000000000..089639fb65e
--- /dev/null
+++ b/databases/postgresql90-server/files/smf/manifest.xml
@@ -0,0 +1,37 @@
+<?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='network' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <method_context project='postgres'>
+ <method_credential user='@PGUSER@' group='@PGGROUP@' />
+ <method_environment>
+ <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" />
+ </method_environment>
+ </method_context>
+ <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ start' timeout_seconds='300' />
+ <exec_method type='method' name='stop' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ stop' timeout_seconds='300' />
+ <exec_method type='method' name='refresh' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ refresh' timeout_seconds='60' />
+ <property_group name='config' type='application'>
+ <propval name='data' type='astring' value='@PGDATA@' />
+ <propval name='log' type='astring' value='@PGLOGFILE@' />
+ </property_group>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>PostgreSQL RDBMS</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='postgres' section='1M' />
+ <doc_link name='postgresql.org' uri='http://postgresql.org' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/postgresql90-server/files/smf/postgresql.sh b/databases/postgresql90-server/files/smf/postgresql.sh
new file mode 100644
index 00000000000..4b3d4d19cf9
--- /dev/null
+++ b/databases/postgresql90-server/files/smf/postgresql.sh
@@ -0,0 +1,57 @@
+#!/sbin/sh
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+# ident "%Z%%M% %I% %E SMI"
+. /lib/svc/share/smf_include.sh
+
+# SMF_FMRI is the name of the target service. This allows multiple instances
+# to use the same script.
+
+getproparg()
+{ val=`svcprop -p $1 $SMF_FMRI`
+ [ -n "$val" ] && echo $val
+}
+
+PGBIN=@PREFIX@/bin
+PGDATA=`getproparg config/data`
+PGLOG=`getproparg config/log`
+
+if [ -z $SMF_FMRI ]; then
+ echo "SMF framework variables are not initialized."
+ exit $SMF_EXIT_ERR
+fi
+
+if [ -z $PGDATA ]; then
+
+ echo "postgresql/data property not set"
+ exit $SMF_EXIT_ERR_CONFIG
+fi
+
+if [ -z $PGLOG ]; then
+
+ echo "postgresql/log property not set"
+ exit $SMF_EXIT_ERR_CONFIG
+fi
+
+case "$1" in
+'start')
+ ulimit -n 10240
+ $PGBIN/pg_ctl -D $PGDATA -l $PGLOG start
+ ;;
+
+'stop')
+ $PGBIN/pg_ctl -D $PGDATA stop
+ ;;
+
+'refresh')
+ $PGBIN/pg_ctl -D $PGDATA reload
+ ;;
+*)
+
+ echo $"Usage: $0 {start|refresh}"
+ exit 1
+ ;;
+
+esac
+exit $SMF_EXIT_OK
diff --git a/databases/postgresql91-server/Makefile b/databases/postgresql91-server/Makefile
index 998e727edce..e4d18fbfb2e 100644
--- a/databases/postgresql91-server/Makefile
+++ b/databases/postgresql91-server/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.11 2014/02/23 11:25:52 adam Exp $
+# $NetBSD: Makefile,v 1.12 2014/03/11 14:34:37 jperkin Exp $
PKGNAME= ${DISTNAME:C/-/91-server-/}
COMMENT= PostgreSQL database server programs
@@ -63,6 +63,8 @@ PKG_GECOS.${PGUSER}= PostgreSQL database administrator
PKG_HOME.${PGUSER}= ${PGHOME}
RCD_SCRIPTS= pgsql
+SMF_METHODS= postgresql
+SMF_NAME= postgresql
.include "../../databases/postgresql91-client/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
diff --git a/databases/postgresql91-server/files/smf/manifest.xml b/databases/postgresql91-server/files/smf/manifest.xml
new file mode 100644
index 00000000000..73ebcb6d4c6
--- /dev/null
+++ b/databases/postgresql91-server/files/smf/manifest.xml
@@ -0,0 +1,37 @@
+<?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='network' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <method_context project='postgres'>
+ <method_credential user='@PGUSER@' group='@PGGROUP@' />
+ <method_environment>
+ <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" />
+ </method_environment>
+ </method_context>
+ <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ start' timeout_seconds='300' />
+ <exec_method type='method' name='stop' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ stop' timeout_seconds='300' />
+ <exec_method type='method' name='refresh' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ refresh' timeout_seconds='60' />
+ <property_group name='config' type='application'>
+ <propval name='data' type='astring' value='@PGHOME@/data' />
+ <propval name='log' type='astring' value='@VARBASE@/log/postgresql.log' />
+ </property_group>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>PostgreSQL RDBMS</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='postgres' section='1M' />
+ <doc_link name='postgresql.org' uri='http://postgresql.org' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/postgresql91-server/files/smf/postgresql.sh b/databases/postgresql91-server/files/smf/postgresql.sh
new file mode 100644
index 00000000000..4b3d4d19cf9
--- /dev/null
+++ b/databases/postgresql91-server/files/smf/postgresql.sh
@@ -0,0 +1,57 @@
+#!/sbin/sh
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+# ident "%Z%%M% %I% %E SMI"
+. /lib/svc/share/smf_include.sh
+
+# SMF_FMRI is the name of the target service. This allows multiple instances
+# to use the same script.
+
+getproparg()
+{ val=`svcprop -p $1 $SMF_FMRI`
+ [ -n "$val" ] && echo $val
+}
+
+PGBIN=@PREFIX@/bin
+PGDATA=`getproparg config/data`
+PGLOG=`getproparg config/log`
+
+if [ -z $SMF_FMRI ]; then
+ echo "SMF framework variables are not initialized."
+ exit $SMF_EXIT_ERR
+fi
+
+if [ -z $PGDATA ]; then
+
+ echo "postgresql/data property not set"
+ exit $SMF_EXIT_ERR_CONFIG
+fi
+
+if [ -z $PGLOG ]; then
+
+ echo "postgresql/log property not set"
+ exit $SMF_EXIT_ERR_CONFIG
+fi
+
+case "$1" in
+'start')
+ ulimit -n 10240
+ $PGBIN/pg_ctl -D $PGDATA -l $PGLOG start
+ ;;
+
+'stop')
+ $PGBIN/pg_ctl -D $PGDATA stop
+ ;;
+
+'refresh')
+ $PGBIN/pg_ctl -D $PGDATA reload
+ ;;
+*)
+
+ echo $"Usage: $0 {start|refresh}"
+ exit 1
+ ;;
+
+esac
+exit $SMF_EXIT_OK
diff --git a/databases/postgresql92-server/Makefile b/databases/postgresql92-server/Makefile
index 5940ff6f4ae..7943ee44eaa 100644
--- a/databases/postgresql92-server/Makefile
+++ b/databases/postgresql92-server/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.9 2014/02/23 11:25:53 adam Exp $
+# $NetBSD: Makefile,v 1.10 2014/03/11 14:34:37 jperkin Exp $
PKGNAME= ${DISTNAME:C/-/92-server-/}
COMMENT= PostgreSQL database server programs
@@ -63,6 +63,8 @@ PKG_GECOS.${PGUSER}= PostgreSQL database administrator
PKG_HOME.${PGUSER}= ${PGHOME}
RCD_SCRIPTS= pgsql
+SMF_METHODS= postgresql
+SMF_NAME= postgresql
.include "../../databases/postgresql92-client/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
diff --git a/databases/postgresql92-server/files/smf/manifest.xml b/databases/postgresql92-server/files/smf/manifest.xml
new file mode 100644
index 00000000000..73ebcb6d4c6
--- /dev/null
+++ b/databases/postgresql92-server/files/smf/manifest.xml
@@ -0,0 +1,37 @@
+<?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='network' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <method_context project='postgres'>
+ <method_credential user='@PGUSER@' group='@PGGROUP@' />
+ <method_environment>
+ <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" />
+ </method_environment>
+ </method_context>
+ <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ start' timeout_seconds='300' />
+ <exec_method type='method' name='stop' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ stop' timeout_seconds='300' />
+ <exec_method type='method' name='refresh' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ refresh' timeout_seconds='60' />
+ <property_group name='config' type='application'>
+ <propval name='data' type='astring' value='@PGHOME@/data' />
+ <propval name='log' type='astring' value='@VARBASE@/log/postgresql.log' />
+ </property_group>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>PostgreSQL RDBMS</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='postgres' section='1M' />
+ <doc_link name='postgresql.org' uri='http://postgresql.org' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/postgresql92-server/files/smf/postgresql.sh b/databases/postgresql92-server/files/smf/postgresql.sh
new file mode 100644
index 00000000000..4b3d4d19cf9
--- /dev/null
+++ b/databases/postgresql92-server/files/smf/postgresql.sh
@@ -0,0 +1,57 @@
+#!/sbin/sh
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+# ident "%Z%%M% %I% %E SMI"
+. /lib/svc/share/smf_include.sh
+
+# SMF_FMRI is the name of the target service. This allows multiple instances
+# to use the same script.
+
+getproparg()
+{ val=`svcprop -p $1 $SMF_FMRI`
+ [ -n "$val" ] && echo $val
+}
+
+PGBIN=@PREFIX@/bin
+PGDATA=`getproparg config/data`
+PGLOG=`getproparg config/log`
+
+if [ -z $SMF_FMRI ]; then
+ echo "SMF framework variables are not initialized."
+ exit $SMF_EXIT_ERR
+fi
+
+if [ -z $PGDATA ]; then
+
+ echo "postgresql/data property not set"
+ exit $SMF_EXIT_ERR_CONFIG
+fi
+
+if [ -z $PGLOG ]; then
+
+ echo "postgresql/log property not set"
+ exit $SMF_EXIT_ERR_CONFIG
+fi
+
+case "$1" in
+'start')
+ ulimit -n 10240
+ $PGBIN/pg_ctl -D $PGDATA -l $PGLOG start
+ ;;
+
+'stop')
+ $PGBIN/pg_ctl -D $PGDATA stop
+ ;;
+
+'refresh')
+ $PGBIN/pg_ctl -D $PGDATA reload
+ ;;
+*)
+
+ echo $"Usage: $0 {start|refresh}"
+ exit 1
+ ;;
+
+esac
+exit $SMF_EXIT_OK
diff --git a/databases/postgresql93-server/Makefile b/databases/postgresql93-server/Makefile
index f6b578ce62f..0e330f2d6d7 100644
--- a/databases/postgresql93-server/Makefile
+++ b/databases/postgresql93-server/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.4 2014/02/23 11:25:54 adam Exp $
+# $NetBSD: Makefile,v 1.5 2014/03/11 14:34:37 jperkin Exp $
PKGNAME= ${DISTNAME:C/-/93-server-/}
COMMENT= PostgreSQL database server programs
@@ -63,6 +63,8 @@ PKG_GECOS.${PGUSER}= PostgreSQL database administrator
PKG_HOME.${PGUSER}= ${PGHOME}
RCD_SCRIPTS= pgsql
+SMF_METHODS= postgresql
+SMF_NAME= postgresql
.include "../../databases/postgresql93-client/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
diff --git a/databases/postgresql93-server/files/smf/manifest.xml b/databases/postgresql93-server/files/smf/manifest.xml
new file mode 100644
index 00000000000..73ebcb6d4c6
--- /dev/null
+++ b/databases/postgresql93-server/files/smf/manifest.xml
@@ -0,0 +1,37 @@
+<?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='network' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <method_context project='postgres'>
+ <method_credential user='@PGUSER@' group='@PGGROUP@' />
+ <method_environment>
+ <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" />
+ </method_environment>
+ </method_context>
+ <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ start' timeout_seconds='300' />
+ <exec_method type='method' name='stop' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ stop' timeout_seconds='300' />
+ <exec_method type='method' name='refresh' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ refresh' timeout_seconds='60' />
+ <property_group name='config' type='application'>
+ <propval name='data' type='astring' value='@PGHOME@/data' />
+ <propval name='log' type='astring' value='@VARBASE@/log/postgresql.log' />
+ </property_group>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>PostgreSQL RDBMS</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='postgres' section='1M' />
+ <doc_link name='postgresql.org' uri='http://postgresql.org' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/databases/postgresql93-server/files/smf/postgresql.sh b/databases/postgresql93-server/files/smf/postgresql.sh
new file mode 100644
index 00000000000..4b3d4d19cf9
--- /dev/null
+++ b/databases/postgresql93-server/files/smf/postgresql.sh
@@ -0,0 +1,57 @@
+#!/sbin/sh
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+# ident "%Z%%M% %I% %E SMI"
+. /lib/svc/share/smf_include.sh
+
+# SMF_FMRI is the name of the target service. This allows multiple instances
+# to use the same script.
+
+getproparg()
+{ val=`svcprop -p $1 $SMF_FMRI`
+ [ -n "$val" ] && echo $val
+}
+
+PGBIN=@PREFIX@/bin
+PGDATA=`getproparg config/data`
+PGLOG=`getproparg config/log`
+
+if [ -z $SMF_FMRI ]; then
+ echo "SMF framework variables are not initialized."
+ exit $SMF_EXIT_ERR
+fi
+
+if [ -z $PGDATA ]; then
+
+ echo "postgresql/data property not set"
+ exit $SMF_EXIT_ERR_CONFIG
+fi
+
+if [ -z $PGLOG ]; then
+
+ echo "postgresql/log property not set"
+ exit $SMF_EXIT_ERR_CONFIG
+fi
+
+case "$1" in
+'start')
+ ulimit -n 10240
+ $PGBIN/pg_ctl -D $PGDATA -l $PGLOG start
+ ;;
+
+'stop')
+ $PGBIN/pg_ctl -D $PGDATA stop
+ ;;
+
+'refresh')
+ $PGBIN/pg_ctl -D $PGDATA reload
+ ;;
+*)
+
+ echo $"Usage: $0 {start|refresh}"
+ exit 1
+ ;;
+
+esac
+exit $SMF_EXIT_OK
diff --git a/databases/redis/Makefile b/databases/redis/Makefile
index 7805c197a1c..b9906e6aba3 100644
--- a/databases/redis/Makefile
+++ b/databases/redis/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.6 2014/03/10 13:24:13 fhajny Exp $
+# $NetBSD: Makefile,v 1.7 2014/03/11 14:34:37 jperkin Exp $
DISTNAME= redis-2.8.7
CATEGORIES= databases
@@ -42,6 +42,8 @@ PKG_GECOS.${REDIS_USER}= Redis daemon user
PKG_HOME.${REDIS_USER}= ${REDIS_DBDIR}
FILES_SUBST+= REDIS_USER=${REDIS_USER}
+FILES_SUBST+= REDIS_GROUP=${REDIS_GROUP}
+FILES_SUBST+= REDIS_DATADIR=${REDIS_DATADIR}
SUBST_CLASSES+= fix-paths
SUBST_STAGE.fix-paths= post-patch
diff --git a/databases/redis/files/smf/manifest.xml b/databases/redis/files/smf/manifest.xml
new file mode 100644
index 00000000000..d8aea5cbf7a
--- /dev/null
+++ b/databases/redis/files/smf/manifest.xml
@@ -0,0 +1,32 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context working_directory="@REDIS_DATADIR@">
+ <method_credential user="@REDIS_USER@" group="@REDIS_GROUP@" />
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/bin/redis-server %{config_file}" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/redis.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Redis server</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/devel/memcached/Makefile b/devel/memcached/Makefile
index 0eaf8b145c2..bc922f8c9ba 100644
--- a/devel/memcached/Makefile
+++ b/devel/memcached/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.36 2014/02/12 23:17:49 tron Exp $
+# $NetBSD: Makefile,v 1.37 2014/03/11 14:34:37 jperkin Exp $
DISTNAME= memcached-1.4.17
PKGREVISION= 1
@@ -29,6 +29,7 @@ PKG_USERS= ${MEMCACHED_USER}:${MEMCACHED_GROUP}
PKG_GROUPS_VARS+= MEMCACHED_GROUP
PKG_USERS_VARS+= MEMCACHED_USER
FILES_SUBST+= MEMCACHED_USER=${MEMCACHED_USER}
+FILES_SUBST+= MEMCACHED_GROUP=${MEMCACHED_GROUP}
TEST_TARGET= test
diff --git a/devel/memcached/files/smf/manifest.xml b/devel/memcached/files/smf/manifest.xml
new file mode 100644
index 00000000000..9c0f68af85c
--- /dev/null
+++ b/devel/memcached/files/smf/manifest.xml
@@ -0,0 +1,34 @@
+<?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='loopback' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/network/loopback:default' />
+ </dependency>
+ <exec_method name='start' type='method' exec='@PREFIX@/bin/memcached -d -u %{config/user} -l %{config/listen_ip} -m %{config/memory}' timeout_seconds='30'>
+ <method_context>
+ <method_environment>
+ <envvar name='EVENT_NOEVPORT' value='1' />
+ <envvar name='EVENT_SHOW_METHOD' value='1' />
+ </method_environment>
+ </method_context>
+ </exec_method>
+ <exec_method name='stop' type='method' exec=':kill' timeout_seconds='30' />
+ <property_group name='config' type='application'>
+ <propval name='listen_ip' type='astring' value='127.0.0.1' />
+ <propval name='user' type='astring' value='@MEMCACHED_USER@' />
+ <propval name='memory' type='integer' value='64' />
+ </property_group>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>memcached</loctext>
+ </common_name>
+ <documentation>
+ <doc_link name='memcached Official' uri='http://www.danga.com/memcached/' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/lang/erlang/Makefile b/lang/erlang/Makefile
index b70de789cc2..a07fb2dd20d 100644
--- a/lang/erlang/Makefile
+++ b/lang/erlang/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.60 2014/02/12 23:18:05 tron Exp $
+# $NetBSD: Makefile,v 1.61 2014/03/11 14:34:37 jperkin Exp $
DISTNAME= otp_src_${DIST_VERSION_MAJOR}${DIST_VERSION_MINOR:D-${DIST_VERSION_MINOR}}
PKGREVISION= 2
@@ -68,6 +68,8 @@ TEST_TARGET= tests
TEST_MAKE_FLAGS= ERL_TOP=${WRKSRC}
REPLACE_PERL+= make/make_emakefile
+SMF_NAME= epmd
+
PLIST_SRC= PLIST
.if exists(${.CURDIR}/PLIST.${OPSYS})
diff --git a/lang/erlang/files/smf/manifest.xml b/lang/erlang/files/smf/manifest.xml
new file mode 100644
index 00000000000..23f00e59be8
--- /dev/null
+++ b/lang/erlang/files/smf/manifest.xml
@@ -0,0 +1,30 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context>
+ <method_credential user="nobody" group="nobody" />
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/lib/erlang/bin/epmd -daemon" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application"></property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Erlang Port Mapper Daemon</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/mail/amavisd-new/Makefile b/mail/amavisd-new/Makefile
index 9d326252f2c..ad43a1001a3 100644
--- a/mail/amavisd-new/Makefile
+++ b/mail/amavisd-new/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.11 2013/12/09 14:17:48 obache Exp $
+# $NetBSD: Makefile,v 1.12 2014/03/11 14:34:38 jperkin Exp $
DISTNAME= amavisd-new-${VERSION}${PATCHLEVEL}
PKGNAME= amavisd-new-${VERSION}${PATCHLEVEL:S/-//}
@@ -75,6 +75,7 @@ OWN_DIRS_PERMS+= ${AMAVIS_DIR}/tmp ${AMAVIS_USER} ${AMAVIS_GROUP} 750
OWN_DIRS_PERMS+= ${AMAVIS_QUARANTINE} ${AMAVIS_USER} ${AMAVIS_GROUP} 750
RCD_SCRIPTS= amavisd
+SMF_NAME= amavisd
CONF_FILES= ${EGDIR}/amavisd.conf-minimal ${PKG_SYSCONFDIR}/amavisd.conf
PKG_OPTIONS_VAR= PKG_OPTIONS.amavisd-new
diff --git a/mail/amavisd-new/files/smf/manifest.xml b/mail/amavisd-new/files/smf/manifest.xml
new file mode 100644
index 00000000000..5178d250563
--- /dev/null
+++ b/mail/amavisd-new/files/smf/manifest.xml
@@ -0,0 +1,39 @@
+<?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>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/amavisd start" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec="@PREFIX@/sbin/amavisd stop" timeout_seconds="120" />
+ <exec_method type="method" name="refresh" exec="@PREFIX@/sbin/amavisd reload" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/amavisd.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Amavisd</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/mail/courier-imap/Makefile b/mail/courier-imap/Makefile
index f2502e4be77..96b06ad356a 100644
--- a/mail/courier-imap/Makefile
+++ b/mail/courier-imap/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.78 2013/07/12 10:44:55 jperkin Exp $
+# $NetBSD: Makefile,v 1.79 2014/03/11 14:34:38 jperkin Exp $
DISTNAME= courier-imap-4.10.0
PKGREVISION= 3
@@ -52,6 +52,7 @@ CONF_FILES_PERMS+= ${EGDIR}/${_file_} \
${COURIER_FILE_PERMS}
.endfor
RCD_SCRIPTS= courierimap courierimaps courierpop courierpops
+SMF_METHODS= courier-imap
SUBST_CLASSES+= courier
SUBST_FILES.courier= imap/imapd-ssl.dist.in imap/imapd.8.in \
diff --git a/mail/courier-imap/files/smf/courier-imap.sh b/mail/courier-imap/files/smf/courier-imap.sh
new file mode 100644
index 00000000000..2f4dc767178
--- /dev/null
+++ b/mail/courier-imap/files/smf/courier-imap.sh
@@ -0,0 +1,122 @@
+#!@SMF_METHOD_SHELL@
+#
+# $NetBSD: courier-imap.sh,v 1.1 2014/03/11 14:34:38 jperkin Exp $
+#
+# Init script for Courier-IMAP.
+#
+
+. /lib/svc/share/smf_include.sh
+
+prefix=@PREFIX@
+exec_prefix=@PREFIX@
+bindir=${exec_prefix}/bin
+sbindir=${exec_prefix}/sbin
+
+case "$1" in
+start)
+ cd /
+ . $prefix/etc/courier/imapd
+
+ printf "Starting Courier-IMAP server:"
+
+ case x$IMAPDSTART in
+ x[yY]*)
+ # Start daemons.
+ $sbindir/imapd start
+ printf "\n imap"
+ ;;
+ esac
+
+ . $prefix/etc/courier/imapd-ssl
+ case x$IMAPDSSLSTART in
+ x[yY]*)
+ if test -x $COURIERTLS
+ then
+
+ # First time we start this, generate a dummy SSL certificate.
+
+ if test ! -f $TLS_CERTFILE
+ then
+ printf "\n generating-SSL-certificate..."
+ $prefix/share/courier/mkimapdcert >/dev/null 2>&1
+ fi
+ $sbindir/imapd-ssl start
+ printf "\n imap-ssl"
+ fi
+ ;;
+ esac
+
+ POP3DSTART=""
+ POP3DSSLSTART=""
+
+ if test -f $prefix/etc/courier/pop3d
+ then
+ . $prefix/etc/courier/pop3d
+ fi
+
+ case x$POP3DSTART in
+ x[yY]*)
+ # Start daemons.
+ $sbindir/pop3d start
+ printf "\n pop3"
+ ;;
+ esac
+
+ if test -f $prefix/etc/courier/pop3d-ssl
+ then
+ . $prefix/etc/courier/pop3d-ssl
+ fi
+
+ case x$POP3DSSLSTART in
+ x[yY]*)
+ if test -x $COURIERTLS
+ then
+
+ # First time we start this, generate a dummy SSL certificate.
+
+ if test ! -f $TLS_CERTFILE
+ then
+ printf "\n generating-SSL-certificate..."
+ $prefix/share/courier/mkpop3dcert >/dev/null 2>&1
+ fi
+ $sbindir/pop3d-ssl start
+ printf "\n pop3-ssl"
+ fi
+ ;;
+ esac
+
+ echo ""
+ ;;
+stop)
+ printf "Stopping Courier-IMAP server:"
+ . $prefix/etc/courier/imapd
+ . $prefix/etc/courier/imapd-ssl
+ $sbindir/imapd stop
+ printf "\n imap"
+ if test -x $COURIERTLS
+ then
+ $sbindir/imapd-ssl stop
+ printf "\n imap-ssl"
+ fi
+
+ if test -f $prefix/etc/courier/pop3d
+ then
+ $sbindir/pop3d stop
+ printf "\n pop3"
+
+ if test -x $COURIERTLS
+ then
+ $sbindir/pop3d-ssl stop
+ printf "\n pop3-ssl"
+ fi
+ fi
+
+ echo ""
+ ;;
+restart)
+ $0 stop
+ sleep 3
+ $0 start
+ ;;
+esac
+exit 0
diff --git a/mail/courier-imap/files/smf/manifest.xml b/mail/courier-imap/files/smf/manifest.xml
new file mode 100644
index 00000000000..06c7fff895d
--- /dev/null
+++ b/mail/courier-imap/files/smf/manifest.xml
@@ -0,0 +1,43 @@
+<?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'>
+ <dependency name='fs-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local' />
+ </dependency>
+ <dependency name='network-service' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/service' />
+ </dependency>
+ <dependency name='system-log' grouping='optional_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/system-log' />
+ </dependency>
+ <instance name='@SMF_INSTANCE@' enabled='false'>
+ <dependency name='config-files' grouping='require_any' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/pop3d-ssl' />
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/pop3d' />
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/imapd-ssl' />
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/imapd' />
+ </dependency>
+ <dependency name='authlib' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/@SMF_PREFIX@/courier:authlib' />
+ </dependency>
+ <exec_method name='start' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.courier-imap@ start' timeout_seconds='120' />
+ <exec_method name='stop' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.courier-imap@ stop' timeout_seconds='60' />
+ <property_group name='startd' type='framework'>
+ <propval name='ignore_error' type='astring' value='core,signal' />
+ </property_group>
+ <property_group name='general' type='framework'>
+ <propval name='action_authorization' type='astring' value='solaris.smf.manage.courier-imap' />
+ </property_group>
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>imap - Courier IMAP provides access to Maildirs</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='imapd' section='8' manpath='@PREFIX@/@PKGMANDIR@' />
+ </documentation>
+ </template>
+ </instance>
+ <stability value='Evolving' />
+ </service>
+</service_bundle>
diff --git a/mail/dovecot/files/smf/manifest.xml b/mail/dovecot/files/smf/manifest.xml
new file mode 100644
index 00000000000..714f9739a27
--- /dev/null
+++ b/mail/dovecot/files/smf/manifest.xml
@@ -0,0 +1,34 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context>
+ <method_environment>
+ <envvar name="MASTER_IS_PARENT_ENV" value="1" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/dovecot" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/dovecot/dovecot.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Dovecot IMAP Server</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/mail/dovecot2/Makefile b/mail/dovecot2/Makefile
index 8f03b5c29be..e41ed61c9f3 100644
--- a/mail/dovecot2/Makefile
+++ b/mail/dovecot2/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.59 2014/02/19 15:29:23 taca Exp $
+# $NetBSD: Makefile,v 1.60 2014/03/11 14:34:38 jperkin Exp $
DISTNAME= dovecot-2.2.12
CATEGORIES= mail
@@ -21,6 +21,7 @@ CONFIGURE_ARGS+= --with-ssldir=${SSLDIR}
.include "../../mk/bsd.prefs.mk"
RCD_SCRIPTS= dovecot
+SMF_NAME= dovecot
DOVECOT_USER?= dovecot
DOVECOT_GROUP?= dovecot
diff --git a/mail/dovecot2/files/smf/manifest.xml b/mail/dovecot2/files/smf/manifest.xml
new file mode 100644
index 00000000000..714f9739a27
--- /dev/null
+++ b/mail/dovecot2/files/smf/manifest.xml
@@ -0,0 +1,34 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context>
+ <method_environment>
+ <envvar name="MASTER_IS_PARENT_ENV" value="1" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/dovecot" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/dovecot/dovecot.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Dovecot IMAP Server</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/mail/mailman/files/smf/manifest.xml b/mail/mailman/files/smf/manifest.xml
new file mode 100644
index 00000000000..67c0516c6cf
--- /dev/null
+++ b/mail/mailman/files/smf/manifest.xml
@@ -0,0 +1,27 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context></method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/lib/mailman/bin/mailmanctl -s start" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec="@PREFIX@/lib/mailman/bin/mailmanctl stop" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Mailman Master</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/mail/postfix/files/smf/manifest.xml b/mail/postfix/files/smf/manifest.xml
new file mode 100644
index 00000000000..68029cd3bb2
--- /dev/null
+++ b/mail/postfix/files/smf/manifest.xml
@@ -0,0 +1,43 @@
+<?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-files' grouping='require_all' restart_on='refresh' type='path'>
+ <service_fmri value='file://@PKG_SYSCONFDIR@/main.cf' />
+ <service_fmri value='file://@PKG_SYSCONFDIR@/master.cf' />
+ </dependency>
+ <exec_method name='start' type='method' exec='@PREFIX@/sbin/postfix start' timeout_seconds='60' />
+ <exec_method name='stop' type='method' exec='@PREFIX@/sbin/postfix stop' timeout_seconds='60' />
+ <exec_method name='refresh' type='method' exec='@PREFIX@/sbin/postfix reload' timeout_seconds='60' />
+ <property_group name='startd' type='framework'>
+ <propval name='ignore_error' type='astring' value='core,signal' />
+ </property_group>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>Postfix SMTP Server</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='postfix' section='1' />
+ <doc_link name='postfix.org' uri='http://www.postfix.org/documentation.html' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
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>
diff --git a/mail/sendmail/files/smf/manifest.xml b/mail/sendmail/files/smf/manifest.xml
new file mode 100644
index 00000000000..6b97beabd20
--- /dev/null
+++ b/mail/sendmail/files/smf/manifest.xml
@@ -0,0 +1,41 @@
+<?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='0'>
+ <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-files' grouping='require_all' restart_on='refresh' type='path'>
+ <service_fmri value='file:///etc/mail/sendmail.cf' />
+ </dependency>
+ <exec_method name='start' type='method' exec='@PREFIX@/libexec/sendmail/sendmail -Lsm-mta -bd -q30m' timeout_seconds='60' />
+ <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60' />
+ <property_group name='startd' type='framework'>
+ <propval name='ignore_error' type='astring' value='core,signal' />
+ </property_group>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>Sendmail SMTP Server</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='sendmail' section='8' />
+ <doc_link name='sendmail.com' uri='http://www.sendmail.com/sm/open_source/docs/' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/bind98/Makefile b/net/bind98/Makefile
index 253f267b328..bb28676a846 100644
--- a/net/bind98/Makefile
+++ b/net/bind98/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.36 2014/02/12 23:18:19 tron Exp $
+# $NetBSD: Makefile,v 1.37 2014/03/11 14:34:38 jperkin Exp $
DISTNAME= bind-${BIND_VERSION}
PKGNAME= ${DISTNAME:S/-P/pl/}
@@ -69,6 +69,7 @@ PLIST.inet6= yes
.endif
RCD_SCRIPTS= lwresd named9
+SMF_METHODS= named
INSTALLATION_DIRS= ${DOCDIR} share/doc/bind9/arm share/doc/bind9/misc
diff --git a/net/bind98/files/smf/manifest.xml b/net/bind98/files/smf/manifest.xml
new file mode 100644
index 00000000000..6e35cf26498
--- /dev/null
+++ b/net/bind98/files/smf/manifest.xml
@@ -0,0 +1,141 @@
+<?xml version="1.0"?>
+<!--
+CDDL HEADER START
+
+The contents of this file are subject to the terms of the
+Common Development and Distribution License (the "License").
+You may not use this file except in compliance with the License.
+
+You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+or http://www.opensolaris.org/os/licensing.
+See the License for the specific language governing permissions
+and limitations under the License.
+
+When distributing Covered Code, include this CDDL HEADER in each
+file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+If applicable, add the following below this CDDL HEADER, with the
+fields enclosed by brackets "[]" replaced with your own identifying
+information: Portions Copyright [yyyy] [name of copyright owner]
+
+CDDL HEADER END
+-->
+<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
+<!--
+ Copyright 2007 Sun Microsystems, Inc. All rights reserved.
+ Use is subject to license terms.
+
+ ident "@(#)server.xml 1.8 07/06/19 SMI"
+-->
+<!-- Portions Copyright 2007 Vedran Bender -->
+<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>
+ <dependency name='config-files' grouping='require_any' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/named.conf' />
+ </dependency>
+ <exec_method type='method' name='stop' exec=':kill' timeout_seconds='60' />
+ <!--
+ In order to run multiple named(1M) processes with their own
+ configuration file or properties each must have a unique
+ instance.
+ -->
+ <instance name='default' enabled='false'>
+ <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.named@ %m %i' timeout_seconds='60'>
+ <method_context>
+ <!--
+ privileges: (see privileges(5) and /etc/security/priv_names)
+ file_dac_read, file_dac_search:
+ Necessary for reading the configuration file
+ even it is restricted by the file permission.
+ net_privaddr:
+ Bind to a privileged port number.
+ sys_resource:
+ Permit the setting of resource limits (eg. stack
+ size).
+ proc_chroot:
+ Permit use of chroot(2).
+ -->
+ <method_credential user='root' group='root' privileges='basic,!proc_session,!proc_info,!file_link_any,net_privaddr,file_dac_read,file_dac_search,sys_resource,proc_chroot' />
+ </method_context>
+ </exec_method>
+ <!--
+ SIGHUP causes named to reread its configuration file, but not any
+ of the properties below.
+ -->
+ <exec_method type='method' name='refresh' exec=':kill -HUP' timeout_seconds='60'>
+ <method_context />
+ </exec_method>
+ <property_group name='general' type='framework'>
+ <!-- manage DNS server state -->
+ <propval name='action_authorization' type='astring' value='solaris.smf.manage.bind' />
+ <propval name='value_authorization' type='astring' value='solaris.smf.manage.bind' />
+ </property_group>
+ <!-- Default property settings for named(1M) instance. -->
+ <property_group name='options' type='application'>
+ <!--
+ server: specifies an alternative server command. If
+ not specified the default /usr/sbin/named is used.
+ -->
+ <propval name='server' type='astring' value='' />
+ <!--
+ configuration_file: specifies an alternative
+ configuration file to be used. The property is similar
+ to named(1M) command line option '-c'
+ -->
+ <propval name='configuration_file' type='astring' value='' />
+ <!--
+ ip_interfaces: specifies which IP transport BIND will
+ transmit on. Possible values are 'IPv4' or 'IPv6'. Any
+ other setting assumes 'all', the default.
+ Equivalent command line option '-4' or '-6'.
+ -->
+ <propval name='ip_interfaces' type='astring' value='all' />
+ <!--
+ listen_on_port: Specifies the default UDP and TCP port
+ which will be used to listen for DNS requests.
+ Equivalent command line option '-p <integer>'.
+ -->
+ <propval name='listen_on_port' type='integer' value='0' />
+ <!--
+ debug_level: Specifies the default debug level. The
+ default is 0; no debugging. The Higher the number the
+ more verbose debug information becomes.
+ Equivalent command line option '-d <integer>'.
+ -->
+ <propval name='debug_level' type='integer' value='0' />
+ <!--
+ threads: Specifies the number of cpu worker threads to
+ create. The default of 0 causes named to try and
+ determine the number of CPUs present and create one
+ thread per CPU.
+ Equivalent command line option '-n <integer>'.
+ -->
+ <propval name='threads' type='integer' value='0' />
+ <!--
+ chroot_dir: Change the root directory using chroot(2)
+ to directory after processing the command line
+ arguments, but before reading the configuration file.
+ Equivalent command line option '-t <pathname>'.
+ -->
+ <propval name='chroot_dir' type='astring' value='' />
+ </property_group>
+ </instance>
+ <stability value='Unstable' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>BIND DNS server</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='named' section='1M' manpath='@PREFIX@/@PKGMANDIR@' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/bind98/files/smf/named.sh b/net/bind98/files/smf/named.sh
new file mode 100644
index 00000000000..49a2da36913
--- /dev/null
+++ b/net/bind98/files/smf/named.sh
@@ -0,0 +1,117 @@
+#!@SMF_METHOD_SHELL@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+#pragma ident "@(#)dns-server.sh 1.1 07/03/26 SMI"
+
+# smf_method(5) start/stop script required for server DNS
+
+. /lib/svc/share/smf_include.sh
+
+result=${SMF_EXIT_OK}
+
+# Read command line arguments
+method="$1" # %m
+instance="$2" # %i
+
+# 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
+server="@PREFIX@/sbin/named"
+I=`/usr/bin/basename $0`
+
+case "$method" in
+'start')
+ cmdopts=""
+ properties="debug_level ip_interfaces listen_on_port
+ threads chroot_dir configuration_file server"
+
+ 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
+ 'debug_level')
+ if [ ${value} -gt 0 ]; then
+ cmdopts="${cmdopts} -d ${value}"
+ fi
+ ;;
+ 'ip_interfaces')
+ case ${value} in
+ 'IPv4')
+ cmdopts="${cmdopts} -4";;
+ 'IPv6')
+ cmdopts="${cmdopts} -6";;
+ 'all')
+ : # Default is all, therefore ignore.
+ ;;
+ *)
+ echo "$I: Unrecognised value in service instance property" >&2
+ echo "$I: options/${prop} : ${value}" >&2
+ ;;
+ esac
+ ;;
+ 'listen_on_port')
+ if [ ${value} -gt 0 ]; then
+ cmdopts="${cmdopts} -p ${value}"
+ fi
+ ;;
+ 'threads')
+ if [ ${value} -gt 0 ]; then
+ cmdopts="${cmdopts} -n ${value}"
+ fi
+ ;;
+ 'chroot_dir')
+ cmdopts="${cmdopts} -t ${value}"
+ ;;
+ 'configuration_file')
+ cmdopts="${cmdopts} -c ${value}"
+ ;;
+ 'server')
+ set -- `echo ${value} | /usr/bin/sed -e 's/\\\\//g'`
+ server=$@
+ ;;
+ esac
+ done
+
+ if [ ${result} = ${SMF_EXIT_OK} ]; then
+ echo "$I: Executing: ${server} ${cmdopts}"
+ # Execute named(1M) with relevant command line options.
+ ${server} ${cmdopts}
+ result=$?
+ fi
+ ;;
+'stop')
+ smf_kill_contract ${contract} TERM 1
+ [ $? -ne 0 ] && exit 1
+ ;;
+*)
+ echo "Usage: $I [stop|start] <instance>" >&2
+ exit 1
+ ;;
+esac
+exit ${result}
diff --git a/net/bind99/Makefile b/net/bind99/Makefile
index 25ff5001537..868a31ca902 100644
--- a/net/bind99/Makefile
+++ b/net/bind99/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.33 2014/02/12 23:18:19 tron Exp $
+# $NetBSD: Makefile,v 1.34 2014/03/11 14:34:38 jperkin Exp $
DISTNAME= bind-${BIND_VERSION}
PKGNAME= ${DISTNAME:S/-P/pl/}
@@ -67,6 +67,7 @@ PLIST.inet6= yes
.endif
RCD_SCRIPTS= lwresd named9
+SMF_METHODS= named
INSTALLATION_DIRS= ${DOCDIR} share/doc/bind9/arm
diff --git a/net/bind99/files/smf/manifest.xml b/net/bind99/files/smf/manifest.xml
new file mode 100644
index 00000000000..6e35cf26498
--- /dev/null
+++ b/net/bind99/files/smf/manifest.xml
@@ -0,0 +1,141 @@
+<?xml version="1.0"?>
+<!--
+CDDL HEADER START
+
+The contents of this file are subject to the terms of the
+Common Development and Distribution License (the "License").
+You may not use this file except in compliance with the License.
+
+You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+or http://www.opensolaris.org/os/licensing.
+See the License for the specific language governing permissions
+and limitations under the License.
+
+When distributing Covered Code, include this CDDL HEADER in each
+file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+If applicable, add the following below this CDDL HEADER, with the
+fields enclosed by brackets "[]" replaced with your own identifying
+information: Portions Copyright [yyyy] [name of copyright owner]
+
+CDDL HEADER END
+-->
+<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
+<!--
+ Copyright 2007 Sun Microsystems, Inc. All rights reserved.
+ Use is subject to license terms.
+
+ ident "@(#)server.xml 1.8 07/06/19 SMI"
+-->
+<!-- Portions Copyright 2007 Vedran Bender -->
+<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>
+ <dependency name='config-files' grouping='require_any' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/named.conf' />
+ </dependency>
+ <exec_method type='method' name='stop' exec=':kill' timeout_seconds='60' />
+ <!--
+ In order to run multiple named(1M) processes with their own
+ configuration file or properties each must have a unique
+ instance.
+ -->
+ <instance name='default' enabled='false'>
+ <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.named@ %m %i' timeout_seconds='60'>
+ <method_context>
+ <!--
+ privileges: (see privileges(5) and /etc/security/priv_names)
+ file_dac_read, file_dac_search:
+ Necessary for reading the configuration file
+ even it is restricted by the file permission.
+ net_privaddr:
+ Bind to a privileged port number.
+ sys_resource:
+ Permit the setting of resource limits (eg. stack
+ size).
+ proc_chroot:
+ Permit use of chroot(2).
+ -->
+ <method_credential user='root' group='root' privileges='basic,!proc_session,!proc_info,!file_link_any,net_privaddr,file_dac_read,file_dac_search,sys_resource,proc_chroot' />
+ </method_context>
+ </exec_method>
+ <!--
+ SIGHUP causes named to reread its configuration file, but not any
+ of the properties below.
+ -->
+ <exec_method type='method' name='refresh' exec=':kill -HUP' timeout_seconds='60'>
+ <method_context />
+ </exec_method>
+ <property_group name='general' type='framework'>
+ <!-- manage DNS server state -->
+ <propval name='action_authorization' type='astring' value='solaris.smf.manage.bind' />
+ <propval name='value_authorization' type='astring' value='solaris.smf.manage.bind' />
+ </property_group>
+ <!-- Default property settings for named(1M) instance. -->
+ <property_group name='options' type='application'>
+ <!--
+ server: specifies an alternative server command. If
+ not specified the default /usr/sbin/named is used.
+ -->
+ <propval name='server' type='astring' value='' />
+ <!--
+ configuration_file: specifies an alternative
+ configuration file to be used. The property is similar
+ to named(1M) command line option '-c'
+ -->
+ <propval name='configuration_file' type='astring' value='' />
+ <!--
+ ip_interfaces: specifies which IP transport BIND will
+ transmit on. Possible values are 'IPv4' or 'IPv6'. Any
+ other setting assumes 'all', the default.
+ Equivalent command line option '-4' or '-6'.
+ -->
+ <propval name='ip_interfaces' type='astring' value='all' />
+ <!--
+ listen_on_port: Specifies the default UDP and TCP port
+ which will be used to listen for DNS requests.
+ Equivalent command line option '-p <integer>'.
+ -->
+ <propval name='listen_on_port' type='integer' value='0' />
+ <!--
+ debug_level: Specifies the default debug level. The
+ default is 0; no debugging. The Higher the number the
+ more verbose debug information becomes.
+ Equivalent command line option '-d <integer>'.
+ -->
+ <propval name='debug_level' type='integer' value='0' />
+ <!--
+ threads: Specifies the number of cpu worker threads to
+ create. The default of 0 causes named to try and
+ determine the number of CPUs present and create one
+ thread per CPU.
+ Equivalent command line option '-n <integer>'.
+ -->
+ <propval name='threads' type='integer' value='0' />
+ <!--
+ chroot_dir: Change the root directory using chroot(2)
+ to directory after processing the command line
+ arguments, but before reading the configuration file.
+ Equivalent command line option '-t <pathname>'.
+ -->
+ <propval name='chroot_dir' type='astring' value='' />
+ </property_group>
+ </instance>
+ <stability value='Unstable' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>BIND DNS server</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='named' section='1M' manpath='@PREFIX@/@PKGMANDIR@' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/bind99/files/smf/named.sh b/net/bind99/files/smf/named.sh
new file mode 100644
index 00000000000..49a2da36913
--- /dev/null
+++ b/net/bind99/files/smf/named.sh
@@ -0,0 +1,117 @@
+#!@SMF_METHOD_SHELL@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+#pragma ident "@(#)dns-server.sh 1.1 07/03/26 SMI"
+
+# smf_method(5) start/stop script required for server DNS
+
+. /lib/svc/share/smf_include.sh
+
+result=${SMF_EXIT_OK}
+
+# Read command line arguments
+method="$1" # %m
+instance="$2" # %i
+
+# 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
+server="@PREFIX@/sbin/named"
+I=`/usr/bin/basename $0`
+
+case "$method" in
+'start')
+ cmdopts=""
+ properties="debug_level ip_interfaces listen_on_port
+ threads chroot_dir configuration_file server"
+
+ 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
+ 'debug_level')
+ if [ ${value} -gt 0 ]; then
+ cmdopts="${cmdopts} -d ${value}"
+ fi
+ ;;
+ 'ip_interfaces')
+ case ${value} in
+ 'IPv4')
+ cmdopts="${cmdopts} -4";;
+ 'IPv6')
+ cmdopts="${cmdopts} -6";;
+ 'all')
+ : # Default is all, therefore ignore.
+ ;;
+ *)
+ echo "$I: Unrecognised value in service instance property" >&2
+ echo "$I: options/${prop} : ${value}" >&2
+ ;;
+ esac
+ ;;
+ 'listen_on_port')
+ if [ ${value} -gt 0 ]; then
+ cmdopts="${cmdopts} -p ${value}"
+ fi
+ ;;
+ 'threads')
+ if [ ${value} -gt 0 ]; then
+ cmdopts="${cmdopts} -n ${value}"
+ fi
+ ;;
+ 'chroot_dir')
+ cmdopts="${cmdopts} -t ${value}"
+ ;;
+ 'configuration_file')
+ cmdopts="${cmdopts} -c ${value}"
+ ;;
+ 'server')
+ set -- `echo ${value} | /usr/bin/sed -e 's/\\\\//g'`
+ server=$@
+ ;;
+ esac
+ done
+
+ if [ ${result} = ${SMF_EXIT_OK} ]; then
+ echo "$I: Executing: ${server} ${cmdopts}"
+ # Execute named(1M) with relevant command line options.
+ ${server} ${cmdopts}
+ result=$?
+ fi
+ ;;
+'stop')
+ smf_kill_contract ${contract} TERM 1
+ [ $? -ne 0 ] && exit 1
+ ;;
+*)
+ echo "Usage: $I [stop|start] <instance>" >&2
+ exit 1
+ ;;
+esac
+exit ${result}
diff --git a/net/dnsmasq/files/smf/manifest.xml b/net/dnsmasq/files/smf/manifest.xml
new file mode 100644
index 00000000000..c4993ebbd65
--- /dev/null
+++ b/net/dnsmasq/files/smf/manifest.xml
@@ -0,0 +1,38 @@
+<?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='multi-user' grouping='require_all' restart_on='refresh' type='service'>
+ <service_fmri value='svc:/milestone/multi-user' />
+ </dependency>
+ <dependency name='config' grouping='require_all' restart_on='restart' type='path'>
+ <service_fmri value='file://@PKG_SYSCONFDIR@/dnsmasq.conf' />
+ </dependency>
+ <dependent name='dnsmasq_multi-user-server' grouping='optional_all' restart_on='none'>
+ <service_fmri value='svc:/milestone/multi-user-server' />
+ </dependent>
+ <exec_method type='method' name='start' exec='@PREFIX@/sbin/dnsmasq -C %{config_file}' timeout_seconds='60'>
+ <method_context>
+ <method_credential user='root' group='root' />
+ </method_context>
+ </exec_method>
+ <exec_method type='method' name='stop' exec=':kill' timeout_seconds='60' />
+ <exec_method type='method' name='refresh' exec=':kill -HUP' timeout_seconds='60' />
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/dnsmasq.conf" />
+ </property_group>
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>dnsmasq server</loctext>
+ </common_name>
+ <description>
+ <loctext xml:lang='C'>dnsmasq - A lightweight DHCP and caching DNS server.</loctext>
+ </description>
+ <documentation>
+ <manpage title='dnsmasq' section='8' manpath='@PREFIX@/@PKGMANDIR@' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/haproxy/files/smf/manifest.xml b/net/haproxy/files/smf/manifest.xml
new file mode 100644
index 00000000000..5795a6665a4
--- /dev/null
+++ b/net/haproxy/files/smf/manifest.xml
@@ -0,0 +1,29 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/haproxy -f %{config_file} -D" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/haproxy.cfg" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">HAProxy</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/mDNSResponder/files/smf/manifest.xml b/net/mDNSResponder/files/smf/manifest.xml
new file mode 100644
index 00000000000..1beb9a45743
--- /dev/null
+++ b/net/mDNSResponder/files/smf/manifest.xml
@@ -0,0 +1,30 @@
+<?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='network' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/milestone/network:default'/>
+ </dependency>
+ <dependency name='filesystem' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/system/filesystem/local'/>
+ </dependency>
+ <exec_method name='start' type='method' exec='@PREFIX@/sbin/mdnsd' timeout_seconds='60'/>
+ <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60'/>
+ <property_group name='application' type='application'/>
+ <property_group name='startd' type='framework'>
+ <propval name='duration' type='astring' value='contract'/>
+ <propval name='ignore_error' type='astring' value='core,signal'/>
+ </property_group>
+ <stability value='Evolving'/>
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>Apple ease-of-use IP networking initiative</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='mdnsd' section='8M'/>
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/nagios-base/Makefile b/net/nagios-base/Makefile
index 22a6252b80d..15bc9250124 100644
--- a/net/nagios-base/Makefile
+++ b/net/nagios-base/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.49 2013/09/04 12:31:26 obache Exp $
+# $NetBSD: Makefile,v 1.50 2014/03/11 14:34:39 jperkin Exp $
#
DISTNAME= nagios-3.5.0
@@ -35,7 +35,10 @@ USE_TOOLS+= mail:run perl
CONFIGURE_ARGS+= --with-mail=${TOOLS_PLATFORM.mail:Q}
RCD_SCRIPTS+= nagios
+SMF_NAME= nagios
FILES_SUBST+= NAGIOS_USER=${NAGIOS_USER}
+FILES_SUBST+= NAGIOS_GROUP=${NAGIOS_GROUP}
+FILES_SUBST+= NAGIOSDIR=${NAGIOSDIR}
INSTALL_TARGET= install install-config
diff --git a/net/nagios-base/files/smf/manifest.xml b/net/nagios-base/files/smf/manifest.xml
new file mode 100644
index 00000000000..17f9c1b03f9
--- /dev/null
+++ b/net/nagios-base/files/smf/manifest.xml
@@ -0,0 +1,32 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context working_directory="@NAGIOSDIR@">
+ <method_credential user="@NAGIOS_USER@" group="@NAGIOS_GROUP@" />
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/bin/nagios -d %{config_file}" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/nagios.cfg" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Nagios monitoring</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/nagios-nrpe/Makefile b/net/nagios-nrpe/Makefile
index 2f7380afda3..1cfb4c023fc 100644
--- a/net/nagios-nrpe/Makefile
+++ b/net/nagios-nrpe/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.21 2014/02/12 23:18:23 tron Exp $
+# $NetBSD: Makefile,v 1.22 2014/03/11 14:34:39 jperkin Exp $
#
DISTNAME= nrpe-2.12
@@ -34,6 +34,10 @@ CONFIGURE_ARGS+= --with-nagios-group=${NAGIOS_GROUP:Q}
CONF_FILES+= ${PREFIX}/share/examples/nagios/nrpe.cfg ${PKG_SYSCONFDIR}/nrpe.cfg
RCD_SCRIPTS+= nrpe
+SMF_NAME= nrpe
+FILES_SUBST+= NAGIOS_USER=${NAGIOS_USER}
+FILES_SUBST+= NAGIOS_GROUP=${NAGIOS_GROUP}
+FILES_SUBST+= NAGIOSDIR=${NAGIOSDIR}
INSTALLATION_DIRS= sbin libexec/nagios share/examples/nagios
diff --git a/net/nagios-nrpe/files/smf/manifest.xml b/net/nagios-nrpe/files/smf/manifest.xml
new file mode 100644
index 00000000000..5e941b5a6d9
--- /dev/null
+++ b/net/nagios-nrpe/files/smf/manifest.xml
@@ -0,0 +1,33 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context working_directory="/tmp">
+ <method_credential user="@NAGIOS_USER@" group="@NAGIOS_GROUP@" />
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/nrpe -c %{config_file} -d" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <exec_method type="method" name="refresh" exec=":kill -HUP" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/nrpe.cfg" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Nagios Remote Plug-In Executor (NRPE)</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/net-snmp/Makefile b/net/net-snmp/Makefile
index f6a2445fc62..a2d3cc95166 100644
--- a/net/net-snmp/Makefile
+++ b/net/net-snmp/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.101 2014/02/12 23:18:23 tron Exp $
+# $NetBSD: Makefile,v 1.102 2014/03/11 14:34:39 jperkin Exp $
DISTNAME= net-snmp-5.7.2
PKGREVISION= 6
@@ -101,6 +101,7 @@ CONFIGURE_ARGS+= --enable-ucd-snmp-compatibility
#
REQD_DIRS= ${PREFIX}/share/snmp
RCD_SCRIPTS= snmpd snmptrapd
+SMF_NAME= snmp
USE_TOOLS+= sh:run
REPLACE_INTERPRETER+= bash
diff --git a/net/net-snmp/files/smf/manifest.xml b/net/net-snmp/files/smf/manifest.xml
new file mode 100644
index 00000000000..3be62b4a03c
--- /dev/null
+++ b/net/net-snmp/files/smf/manifest.xml
@@ -0,0 +1,45 @@
+<?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='milestone' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/milestone/sysconfig'/>
+ </dependency>
+ <dependency name='fs-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local'/>
+ </dependency>
+ <dependency name='name-services' grouping='optional_all' restart_on='none' 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='rstat' grouping='optional_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/rpc/rstat'/>
+ </dependency>
+ <dependency name='cryptosvc' grouping='require_all' restart_on='restart' type='service'>
+ <service_fmri value='svc:/system/cryptosvc'/>
+ </dependency>
+ <dependency name='network' grouping='require_all' restart_on='restart' type='service'>
+ <service_fmri value='svc:/milestone/network'/>
+ </dependency>
+ <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost/@PKG_SYSCONFDIR@/snmpd.conf'/>
+ </dependency>
+ <exec_method name='start' type='method' exec='@PREFIX@/sbin/snmpd -c %{config_file}' timeout_seconds='60'/>
+ <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60'/>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/snmpd.conf" />
+ </property_group>
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>net-snmp SNMP daemon</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='snmpd' section='1M' manpath='@PREFIX@/@PKGMANDIR@/'/>
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/proftpd/files/smf/manifest.xml b/net/proftpd/files/smf/manifest.xml
new file mode 100644
index 00000000000..316cd4072eb
--- /dev/null
+++ b/net/proftpd/files/smf/manifest.xml
@@ -0,0 +1,33 @@
+<?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='network' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <dependency name='autofs' grouping='optional_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/system/filesystem/autofs:default' />
+ </dependency>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/proftpd -c %{config_file}" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <exec_method type="method" name="refresh" exec=":kill -HUP" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/proftpd.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">ProFTPD FTP daemon</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/rabbitmq/Makefile b/net/rabbitmq/Makefile
index dd5660453e2..415f064a27b 100644
--- a/net/rabbitmq/Makefile
+++ b/net/rabbitmq/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.16 2014/03/10 11:18:41 fhajny Exp $
+# $NetBSD: Makefile,v 1.17 2014/03/11 14:34:39 jperkin Exp $
PKGNAME= rabbitmq-${RMQ_VERSION}
DISTNAME= rabbitmq-server-${RMQ_VERSION}
@@ -51,6 +51,10 @@ CONF_FILES+= share/examples/rabbitmq/rabbitmq-env.conf \
CONF_FILES+= share/examples/rabbitmq/rabbitmq.config.example \
${PKG_SYSCONFDIR}/rabbitmq.config
+FILES_SUBST+= RMQ_USER=${RMQ_USER}
+FILES_SUBST+= RMQ_GROUP=${RMQ_GROUP}
+FILES_SUBST+= RMQ_DIR=${RMQ_DIR}
+
INSTALLATION_DIRS+= share/examples/rabbitmq
SCRIPTS_DIR= ${WRKSRC}/scripts
diff --git a/net/rabbitmq/files/smf/manifest.xml b/net/rabbitmq/files/smf/manifest.xml
new file mode 100644
index 00000000000..cdd578c81c5
--- /dev/null
+++ b/net/rabbitmq/files/smf/manifest.xml
@@ -0,0 +1,36 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <dependency name='@SMF_NAME@-epmd' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/@SMF_PREFIX@/epmd' />
+ </dependency>
+ <method_context>
+ <method_credential user="@RMQ_USER@" group="@RMQ_GROUP@" />
+ <method_environment>
+ <envvar name="HOME" value="@RMQ_DIR@" />
+ <envvar name="PATH" value="@PREFIX@/sbin:@PREFIX@/bin:/sbin:/usr/sbin:/usr/bin" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/rabbitmq-server" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="child" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">RabbitMQ Server</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/rsync/Makefile b/net/rsync/Makefile
index 9f5207bdc5a..2fc4a7c03d3 100644
--- a/net/rsync/Makefile
+++ b/net/rsync/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.91 2013/10/02 18:06:19 adam Exp $
+# $NetBSD: Makefile,v 1.92 2014/03/11 14:34:39 jperkin Exp $
DISTNAME= rsync-3.1.0
CATEGORIES= net
@@ -26,6 +26,7 @@ PKG_SYSCONFSUBDIR= rsync
RCD_SCRIPTS= rsyncd
RCD_SCRIPT_SRC.rsyncd= files/rsyncd.sh
+SMF_NAME= rsyncd
SUBST_CLASSES+= paths
SUBST_MESSAGE.paths= Fixing hardcoded paths.
diff --git a/net/rsync/files/smf/manifest.xml b/net/rsync/files/smf/manifest.xml
new file mode 100644
index 00000000000..2329b526e1d
--- /dev/null
+++ b/net/rsync/files/smf/manifest.xml
@@ -0,0 +1,29 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <exec_method type="method" name="start" exec="@PREFIX@/bin/rsync --daemon --config %{config_file}" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/rsyncd.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">rsyncd daemon</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/net/spread/files/smf/manifest.xml b/net/spread/files/smf/manifest.xml
new file mode 100644
index 00000000000..024cccb4e4d
--- /dev/null
+++ b/net/spread/files/smf/manifest.xml
@@ -0,0 +1,35 @@
+<?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='0'>
+ <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='network-service' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/service' />
+ </dependency>
+ <dependency name='name-services' grouping='require_all' restart_on='refresh' type='service'>
+ <service_fmri value='svc:/milestone/name-services' />
+ </dependency>
+ <method_context working_directory='@SPREAD_DIR@'>
+ <method_credential group='@SPREAD_USER@' user='@SPREAD_GROUP@' />
+ </method_context>
+ <exec_method name='start' type='method' exec='@PREFIX@/sbin/spread -c @PKG_SYSCONFDIR@/spread.conf' timeout_seconds='300' />
+ <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60' />
+ <property_group name='startd' type='framework'>
+ <propval name='duration' type='astring' value='child' />
+ <propval name='ignore_error' type='astring' value='core,signal' />
+ </property_group>
+ <stability value='Stable' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>Spread Daemon</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='spread' section='1' manpath='@PREFIX@/@PKGMANDIR@' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/security/clamav/Makefile b/security/clamav/Makefile
index b84db4c2f14..d3d45c24ae6 100644
--- a/security/clamav/Makefile
+++ b/security/clamav/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.14 2014/01/16 09:51:54 adam Exp $
+# $NetBSD: Makefile,v 1.15 2014/03/11 14:34:39 jperkin Exp $
DISTNAME= clamav-0.98.1
CATEGORIES= security
@@ -40,9 +40,19 @@ CONFIGURE_ARGS+= --enable-readdir_r
BUILD_DEFS+= CLAMAV_USER CLAMAV_GROUP CLAMAV_DBDIR
FILES_SUBST+= CLAMAV_USER=${CLAMAV_USER}
+FILES_SUBST+= CLAMAV_GROUP=${CLAMAV_GROUP}
+FILES_SUBST+= CLAMAV_DBDIR=${CLAMAV_DBDIR}
MESSAGE_SUBST+= CLAMAV_USER=${CLAMAV_USER}
+SUBST_CLASSES+= vars
+SUBST_STAGE.vars= pre-configure
+SUBST_FILES.vars= etc/clamd.conf
+SUBST_VARS.vars= CLAMAV_DBDIR
+
RCD_SCRIPTS= clamd freshclamd
+SMF_METHODS= ${RCD_SCRIPTS}
+SMF_INSTANCES= ${SMF_METHODS}
+
PKG_GROUPS+= ${CLAMAV_GROUP}
PKG_USERS+= ${CLAMAV_USER}:${CLAMAV_GROUP}
@@ -50,7 +60,6 @@ PKG_GROUPS_VARS+= CLAMAV_GROUP
PKG_USERS_VARS= CLAMAV_USER
EGDIR= ${PREFIX}/share/examples/clamav
-FILES_SUBST+= CLAMAV_DBDIR=${CLAMAV_DBDIR}
OWN_DIRS_PERMS= ${CLAMAV_DBDIR} ${CLAMAV_USER} ${CLAMAV_GROUP} 0775
CONF_FILES= # empty
diff --git a/security/clamav/distinfo b/security/clamav/distinfo
index 91a562c5a79..53a3b8f84f7 100644
--- a/security/clamav/distinfo
+++ b/security/clamav/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.11 2014/01/16 09:51:54 adam Exp $
+$NetBSD: distinfo,v 1.12 2014/03/11 14:34:39 jperkin Exp $
SHA1 (clamav-0.98.1.tar.gz) = 9f04c0e81463c36f7e58d18f16d1b88f3332dcb8
RMD160 (clamav-0.98.1.tar.gz) = 8899a07901493d5ea39c248417c2887d64101702
@@ -9,4 +9,5 @@ SHA1 (patch-ab) = fea995ea944c2ae0f51a41e1a1076badf65c6c8b
SHA1 (patch-ad) = c862658ceba98ac415b0c193fc205c5862ac4970
SHA1 (patch-af) = d217633ed33c72b6d01a9aeef03f0f5dd33b4336
SHA1 (patch-ag) = cf4a0040a53c81402e8d15478407bc854af6fb30
-SHA1 (patch-configure) = e5d27c543ca63baa0a11dd0066013bdb79178b13
+SHA1 (patch-etc_clamd.conf.sample) = 69bed1c88cf60f699e64fd361091621728b9f9d1
+SHA1 (patch-etc_freshclam.conf.sample) = 520ffbca5421ef2dc270e3c5a13cfb36a469e676
diff --git a/security/clamav/files/smf/clamd.sh b/security/clamav/files/smf/clamd.sh
new file mode 100644
index 00000000000..4326c4e51be
--- /dev/null
+++ b/security/clamav/files/smf/clamd.sh
@@ -0,0 +1,30 @@
+#!@SMF_METHOD_SHELL@
+#
+# $NetBSD: clamd.sh,v 1.1 2014/03/11 14:34:39 jperkin Exp $
+#
+# Init script for clamd(8)
+#
+
+. /lib/svc/share/smf_include.sh
+
+PIDFILE="@CLAMAV_DBDIR@/clamd.pid"
+
+case "$1" in
+start)
+ @PREFIX@/sbin/clamd
+ ;;
+stop)
+ kill `@HEAD@ -1 ${PIDFILE}`
+ ;;
+refresh)
+ # Re-open any log files and reload the database
+ kill -HUP `@HEAD@ -1 ${PIDFILE}`
+ kill -USR2 `@HEAD@ -1 ${PIDFILE}`
+ ;;
+*)
+ echo "Usage: $0 {start|stop|refresh}" >&2
+ exit 1
+ ;;
+esac
+
+exit $SMF_EXIT_OK
diff --git a/security/clamav/files/smf/freshclamd.sh b/security/clamav/files/smf/freshclamd.sh
new file mode 100644
index 00000000000..f75d74a4743
--- /dev/null
+++ b/security/clamav/files/smf/freshclamd.sh
@@ -0,0 +1,28 @@
+#!@SMF_METHOD_SHELL@
+#
+# $NetBSD: freshclamd.sh,v 1.1 2014/03/11 14:34:39 jperkin Exp $
+#
+# Init script for freshclam(1).
+#
+
+. /lib/svc/share/smf_include.sh
+
+PIDFILE="@CLAMAV_DBDIR@/freshclamd.pid"
+
+case "$1" in
+start)
+ @PREFIX@/bin/freshclam -c 2 -d -p ${PIDFILE} -u @CLAMAV_USER@
+ ;;
+stop)
+ kill `@HEAD@ -1 ${PIDFILE}`
+ ;;
+refresh)
+ kill -HUP `@HEAD@ -1 ${PIDFILE}`
+ ;;
+*)
+ echo "Usage: $0 {start|stop|refresh}" >&2
+ exit 1
+ ;;
+esac
+
+exit $SMF_EXIT_OK
diff --git a/security/clamav/files/smf/manifest.xml b/security/clamav/files/smf/manifest.xml
new file mode 100644
index 00000000000..4550ba865b7
--- /dev/null
+++ b/security/clamav/files/smf/manifest.xml
@@ -0,0 +1,57 @@
+<?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'>
+ <dependency name='fs-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local'/>
+ </dependency>
+ <dependency name='network-service' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/service'/>
+ </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>
+ <method_context working_directory='@CLAMAV_DBDIR@'>
+ <method_credential user='@CLAMAV_USER@' group='@CLAMAV_GROUP@'/>
+ </method_context>
+ <property_group name='startd' type='framework'>
+ <propval name='ignore_error' type='astring' value='core,signal'/>
+ </property_group>
+ <instance name='clamd' enabled='false'>
+ <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/clamd.conf'/>
+ </dependency>
+ <exec_method name='start' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.clamd@ start' timeout_seconds='0'/>
+ <exec_method name='stop' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.clamd@ stop' timeout_seconds='0'/>
+ <exec_method name='refresh' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.clamd@ refresh' timeout_seconds='0'/>
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>ClamAV anti-virus scanner daemon</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='clamd' section='8' manpath='man'/>
+ </documentation>
+ </template>
+ </instance>
+ <instance name='freshclamd' enabled='false'>
+ <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/freshclam.conf'/>
+ </dependency>
+ <exec_method name='start' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.freshclamd@ start' timeout_seconds='0'/>
+ <exec_method name='stop' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.freshclamd@ stop' timeout_seconds='0'/>
+ <exec_method name='refresh' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.freshclamd@ refresh' timeout_seconds='0'/>
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>ClamAV anti-virus database update daemon</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='freshclam' section='1' manpath='man'/>
+ </documentation>
+ </template>
+ </instance>
+ <stability value='Unstable'/>
+ </service>
+</service_bundle>
diff --git a/security/clamav/patches/patch-etc_clamd.conf.sample b/security/clamav/patches/patch-etc_clamd.conf.sample
new file mode 100644
index 00000000000..58fce424ce3
--- /dev/null
+++ b/security/clamav/patches/patch-etc_clamd.conf.sample
@@ -0,0 +1,33 @@
+$NetBSD: patch-etc_clamd.conf.sample,v 1.1 2014/03/11 14:34:40 jperkin Exp $
+
+Make this useable out of the box.
+
+--- etc/clamd.conf.sample.orig 2013-04-17 15:25:09.000000000 +0000
++++ etc/clamd.conf.sample
+@@ -5,7 +5,7 @@
+
+
+ # Comment or remove the line below.
+-Example
++#Example
+
+ # Uncomment this option to enable logging.
+ # LogFile must be writable for the user running daemon.
+@@ -58,7 +58,7 @@ Example
+ # This option allows you to save a process identifier of the listening
+ # daemon (main thread).
+ # Default: disabled
+-#PidFile /var/run/clamd.pid
++PidFile @CLAMAV_DBDIR@/clamd.pid
+
+ # Optional path to the global temporary directory.
+ # Default: system specific (usually /tmp or /var/tmp).
+@@ -77,7 +77,7 @@ Example
+
+ # Path to a local socket file the daemon will listen on.
+ # Default: disabled (must be specified by a user)
+-#LocalSocket /tmp/clamd.socket
++LocalSocket @CLAMAV_DBDIR@/clamd.sock
+
+ # Sets the group ownership on the unix socket.
+ # Default: disabled (the primary group of the user running clamd)
diff --git a/security/clamav/patches/patch-etc_freshclam.conf.sample b/security/clamav/patches/patch-etc_freshclam.conf.sample
new file mode 100644
index 00000000000..db6b6c7d00e
--- /dev/null
+++ b/security/clamav/patches/patch-etc_freshclam.conf.sample
@@ -0,0 +1,15 @@
+$NetBSD: patch-etc_freshclam.conf.sample,v 1.1 2014/03/11 14:34:40 jperkin Exp $
+
+Make this useable out of the box.
+
+--- etc/freshclam.conf.sample.orig 2013-04-17 15:25:09.000000000 +0000
++++ etc/freshclam.conf.sample
+@@ -5,7 +5,7 @@
+
+
+ # Comment or remove the line below.
+-Example
++#Example
+
+ # Path to the database directory.
+ # WARNING: It must match clamd.conf's directive!
diff --git a/security/courier-authlib/files/smf/manifest.xml b/security/courier-authlib/files/smf/manifest.xml
new file mode 100644
index 00000000000..ed5db077c21
--- /dev/null
+++ b/security/courier-authlib/files/smf/manifest.xml
@@ -0,0 +1,37 @@
+<?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'>
+ <dependency name='fs-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local' />
+ </dependency>
+ <dependency name='network-service' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/service' />
+ </dependency>
+ <dependency name='system-log' grouping='optional_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/system-log' />
+ </dependency>
+ <instance name='@SMF_INSTANCE@' enabled='false'>
+ <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/authdaemonrc' />
+ </dependency>
+ <exec_method name='start' type='method' exec='@PREFIX@/sbin/authdaemond start' timeout_seconds='120' />
+ <exec_method name='stop' type='method' exec='@PREFIX@/sbin/authdaemond stop' timeout_seconds='60' />
+ <property_group name='startd' type='framework'>
+ <propval name='ignore_error' type='astring' value='core,signal' />
+ </property_group>
+ <property_group name='general' type='framework'>
+ <propval name='action_authorization' type='astring' value='solaris.smf.manage.courier-authlib' />
+ </property_group>
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>authlib - Generic authentication API for Courier mail services</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='authlib' section='3' manpath='@PREFIX@/@PKGMANDIR@' />
+ </documentation>
+ </template>
+ </instance>
+ <stability value='Evolving' />
+ </service>
+</service_bundle>
diff --git a/security/openssh/Makefile b/security/openssh/Makefile
index f89cdde8d6d..0eeed0fe660 100644
--- a/security/openssh/Makefile
+++ b/security/openssh/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.215 2014/02/12 23:18:34 tron Exp $
+# $NetBSD: Makefile,v 1.216 2014/03/11 14:34:40 jperkin Exp $
DISTNAME= openssh-6.4p1
PKGNAME= openssh-6.4.1
@@ -161,6 +161,7 @@ CONF_FILES+= ${EGDIR}/${f} ${PKG_SYSCONFDIR}/${f}
OWN_DIRS= ${OPENSSH_CHROOT}
RCD_SCRIPTS= sshd
RCD_SCRIPT_SRC.sshd= ${WRKDIR}/sshd.sh
+SMF_METHODS= sshd
PLIST_SRC+= ${.CURDIR}/PLIST
FILES_SUBST+= SSH_PID_DIR=${SSH_PID_DIR:Q}
diff --git a/security/openssh/files/smf/manifest.xml b/security/openssh/files/smf/manifest.xml
new file mode 100644
index 00000000000..4bd43a9a746
--- /dev/null
+++ b/security/openssh/files/smf/manifest.xml
@@ -0,0 +1,47 @@
+<?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='net-loopback' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/loopback'/>
+ </dependency>
+ <dependency name='net-physical' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/network/physical'/>
+ </dependency>
+ <dependency name='cryptosvc' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/cryptosvc'/>
+ </dependency>
+ <dependency name='utmp' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/utmp'/>
+ </dependency>
+ <dependency name='config_data' grouping='require_all' restart_on='restart' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/sshd_config'/>
+ </dependency>
+ <dependent name='openssh_multi-user-server' restart_on='none' grouping='optional_all'>
+ <service_fmri value='svc:/milestone/multi-user-server'/>
+ </dependent>
+ <exec_method name='start' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.sshd@ start' timeout_seconds='60'/>
+ <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60'/>
+ <exec_method name='refresh' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.sshd@ restart' timeout_seconds='60'/>
+ <property_group name='general' type='framework'>
+ <property name='action_authorization' type='astring'/>
+ </property_group>
+ <property_group name='startd' type='framework'>
+ <propval name='ignore_error' type='astring' value='core,signal'/>
+ </property_group>
+ <stability value='Unstable'/>
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>OpenSSH server</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='sshd' section='1M' manpath='@PREFIX@/@PKGMANDIR@'/>
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/security/openssh/files/smf/sshd.sh b/security/openssh/files/smf/sshd.sh
new file mode 100644
index 00000000000..0ab48193b12
--- /dev/null
+++ b/security/openssh/files/smf/sshd.sh
@@ -0,0 +1,68 @@
+#!@SMF_METHOD_SHELL@
+#
+# Copyright 2004 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+# ident "@(#)sshd 1.4 04/11/17 SMI"
+
+SSHDIR=@PKG_SYSCONFDIR@
+KEYGEN="@PREFIX@/bin/ssh-keygen -q"
+PIDFILE=@VARBASE@/run/sshd.pid
+
+# Checks to see if RSA, and DSA host keys are available
+# if any of these keys are not present, the respective keys are created.
+create_key()
+{
+ keypath=$1
+ keytype=$2
+
+ if [ ! -f $keypath ]; then
+ grep "^HostKey $keypath" $SSHDIR/sshd_config > /dev/null 2>&1
+ if [ $? -eq 0 ]; then
+ echo Creating new $keytype public/private host key pair
+ $KEYGEN -f $keypath -t $keytype -N ''
+ return $?
+ fi
+ fi
+
+ return 0
+}
+
+# This script is being used for two purposes: as part of an SMF
+# start/stop/refresh method, and as a sysidconfig(1M)/sys-unconfig(1M)
+# application.
+#
+# Both, the SMF methods and sysidconfig/sys-unconfig use different
+# arguments..
+
+case $1 in
+ # sysidconfig/sys-unconfig arguments (-c and -u)
+'-c')
+ create_key $SSHDIR/ssh_host_rsa_key rsa
+ create_key $SSHDIR/ssh_host_dsa_key dsa
+ ;;
+
+'-u')
+ # sys-unconfig(1M) knows how to remove ssh host keys, so there's
+ # nothing to do here.
+ :
+ ;;
+
+ # SMF arguments (start and restart [really "refresh"])
+'start')
+ @PREFIX@/sbin/sshd
+ ;;
+
+'restart')
+ if [ -f "$PIDFILE" ]; then
+ /usr/bin/kill -HUP `/usr/bin/cat $PIDFILE`
+ fi
+ ;;
+
+*)
+ echo "Usage: $0 { start | restart }"
+ exit 1
+ ;;
+esac
+
+exit $?
diff --git a/security/py-denyhosts/Makefile b/security/py-denyhosts/Makefile
index b63c1207c60..6a8c902e66c 100644
--- a/security/py-denyhosts/Makefile
+++ b/security/py-denyhosts/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.11 2014/02/04 15:38:16 pettai Exp $
+# $NetBSD: Makefile,v 1.12 2014/03/11 14:34:40 jperkin Exp $
VER= 2.6
DISTNAME= DenyHosts-${VER}
@@ -32,6 +32,7 @@ PYTHON_SELF_CONFLICT= yes
PYTHON_VERSIONS_INCOMPATIBLE= 33
RCD_SCRIPTS+= denyhosts
+SMF_NAME= denyhost
post-configure:
${RM} ${WRKDIR}/${DISTNAME}/scripts/*.orig
diff --git a/security/py-denyhosts/files/smf/manifest.xml b/security/py-denyhosts/files/smf/manifest.xml
new file mode 100644
index 00000000000..5c064aa8d3b
--- /dev/null
+++ b/security/py-denyhosts/files/smf/manifest.xml
@@ -0,0 +1,31 @@
+<?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='0'>
+ <create_default_instance enabled='true' />
+ <single_instance />
+ <dependency name='network' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/denyhosts.conf' />
+ </dependency>
+ <exec_method name='start' type='method' exec='@PREFIX@/bin/denyhosts.py --config=%{config_file} --daemon' timeout_seconds='60' />
+ <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60' />
+ <property_group name='startd' type='framework'>
+ <propval name='ignore_error' type='astring' value='core,signal' />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/denyhosts.conf" />
+ </property_group>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>DenyHosts Daemon</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/sysutils/munin-node/Makefile b/sysutils/munin-node/Makefile
index 4908b9d40b7..89e8daaf043 100644
--- a/sysutils/munin-node/Makefile
+++ b/sysutils/munin-node/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.31 2013/07/25 11:41:25 he Exp $
+# $NetBSD: Makefile,v 1.32 2014/03/11 14:34:40 jperkin Exp $
#
DISTNAME= munin_${VER}
@@ -99,6 +99,7 @@ MESSAGE_SUBST+= VARBASE=${VARBASE:Q}
BUILD_DEFS+= VARBASE
RCD_SCRIPTS+= munin-node
+SMF_NAME= munin
EGDIR= ${PREFIX}/share/examples/munin
diff --git a/sysutils/munin-node/files/smf/manifest.xml b/sysutils/munin-node/files/smf/manifest.xml
new file mode 100644
index 00000000000..a2a75f8f0a5
--- /dev/null
+++ b/sysutils/munin-node/files/smf/manifest.xml
@@ -0,0 +1,37 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'>
+ <service_fmri value='file://@PKG_SYSCONFDIR@/munin-node.conf'/>
+ </dependency>
+ <method_context>
+ <method_environment>
+ <envvar name="PATH" value="@PREFIX@/bin:@PREFIX@/sbin:/usr/xpg4/bin:/usr/bin:/usr/sbin:/usr/sfw/bin:/usr/ccs/bin" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/munin-node" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/munin-node.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Munin node</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/www/apache-tomcat6/Makefile b/www/apache-tomcat6/Makefile
index f5dd906a63b..d7d557eedde 100644
--- a/www/apache-tomcat6/Makefile
+++ b/www/apache-tomcat6/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.14 2014/02/06 12:01:43 spz Exp $
+# $NetBSD: Makefile,v 1.15 2014/03/11 14:34:40 jperkin Exp $
#
DISTNAME= apache-tomcat-${TOMCAT_VER}
@@ -28,6 +28,7 @@ TOMCAT_HOME= ${PREFIX}/share/tomcat
EGDIR= ${PREFIX}/share/examples/tomcat
DOCDIR= ${PREFIX}/share/doc/tomcat
RCD_SCRIPTS= tomcat
+SMF_NAME= tomcat
TOMCAT_USER?= tomcat
TOMCAT_GROUP?= tomcat
USERGROUP_PHASE= pre-install
diff --git a/www/apache-tomcat6/files/smf/manifest.xml b/www/apache-tomcat6/files/smf/manifest.xml
new file mode 100644
index 00000000000..e18f6210114
--- /dev/null
+++ b/www/apache-tomcat6/files/smf/manifest.xml
@@ -0,0 +1,35 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context working_directory="@TOMCAT_HOME@/logs">
+ <method_credential user="@TOMCAT_USER@" group="@TOMCAT_GROUP@" privileges="basic,net_privaddr" />
+ <method_environment>
+ <envvar name="JAVA_HOME" value="@JAVA_HOME@" />
+ <envvar name="CATALINA_HOME" value="@TOMCAT_HOME@" />
+ <envvar name="CATALINA_PID" value="@TOMCAT_HOME@/logs/catalina.pid" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@TOMCAT_HOME@/bin/catalina.sh start" timeout_seconds="600" />
+ <exec_method type="method" name="stop" exec="@TOMCAT_HOME@/bin/catalina.sh stop" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application"></property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Tomcat</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/www/apache-tomcat7/Makefile b/www/apache-tomcat7/Makefile
index dbfa4408093..2f6c669231d 100644
--- a/www/apache-tomcat7/Makefile
+++ b/www/apache-tomcat7/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.16 2013/11/24 04:44:51 ryoon Exp $
+# $NetBSD: Makefile,v 1.17 2014/03/11 14:34:40 jperkin Exp $
#
DISTNAME= apache-tomcat-${TOMCAT_VER}
@@ -28,6 +28,7 @@ TOMCAT_HOME= ${PREFIX}/share/tomcat
EGDIR= ${PREFIX}/share/examples/tomcat
DOCDIR= ${PREFIX}/share/doc/tomcat
RCD_SCRIPTS= tomcat
+SMF_NAME= tomcat
TOMCAT_USER?= tomcat
TOMCAT_GROUP?= tomcat
PKG_GROUPS= ${TOMCAT_GROUP}
diff --git a/www/apache-tomcat7/files/smf/manifest.xml b/www/apache-tomcat7/files/smf/manifest.xml
new file mode 100644
index 00000000000..e18f6210114
--- /dev/null
+++ b/www/apache-tomcat7/files/smf/manifest.xml
@@ -0,0 +1,35 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context working_directory="@TOMCAT_HOME@/logs">
+ <method_credential user="@TOMCAT_USER@" group="@TOMCAT_GROUP@" privileges="basic,net_privaddr" />
+ <method_environment>
+ <envvar name="JAVA_HOME" value="@JAVA_HOME@" />
+ <envvar name="CATALINA_HOME" value="@TOMCAT_HOME@" />
+ <envvar name="CATALINA_PID" value="@TOMCAT_HOME@/logs/catalina.pid" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@TOMCAT_HOME@/bin/catalina.sh start" timeout_seconds="600" />
+ <exec_method type="method" name="stop" exec="@TOMCAT_HOME@/bin/catalina.sh stop" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application"></property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Tomcat</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/www/apache22/files/smf/manifest.xml b/www/apache22/files/smf/manifest.xml
new file mode 100644
index 00000000000..78e937b4406
--- /dev/null
+++ b/www/apache22/files/smf/manifest.xml
@@ -0,0 +1,38 @@
+<?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='0'>
+ <create_default_instance enabled="false" />
+ <single_instance />
+ <dependency name='network' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/httpd.conf'/>
+ </dependency>
+ <method_context>
+ <method_environment>
+ <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" />
+ </method_environment>
+ </method_context>
+ <exec_method name='start' type='method' exec='@PREFIX@/sbin/httpd -k start' timeout_seconds='300' />
+ <exec_method name='stop' type='method' exec='@PREFIX@/sbin/httpd -k stop' timeout_seconds='300' />
+ <exec_method name='refresh' type='method' exec='@PREFIX@/sbin/httpd -k graceful' timeout_seconds='300' />
+ <property_group name='startd' type='framework'>
+ <propval name='ignore_error' type='astring' value='core,signal' />
+ </property_group>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>Apache 2 HTTP server</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='httpd' section='8' manpath='@PREFIX@/apache2/man' />
+ <doc_link name='apache.org' uri='http://httpd.apache.org' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/www/apache24/files/smf/manifest.xml b/www/apache24/files/smf/manifest.xml
new file mode 100644
index 00000000000..78e937b4406
--- /dev/null
+++ b/www/apache24/files/smf/manifest.xml
@@ -0,0 +1,38 @@
+<?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='0'>
+ <create_default_instance enabled="false" />
+ <single_instance />
+ <dependency name='network' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'>
+ <service_fmri value='file://localhost@PKG_SYSCONFDIR@/httpd.conf'/>
+ </dependency>
+ <method_context>
+ <method_environment>
+ <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" />
+ </method_environment>
+ </method_context>
+ <exec_method name='start' type='method' exec='@PREFIX@/sbin/httpd -k start' timeout_seconds='300' />
+ <exec_method name='stop' type='method' exec='@PREFIX@/sbin/httpd -k stop' timeout_seconds='300' />
+ <exec_method name='refresh' type='method' exec='@PREFIX@/sbin/httpd -k graceful' timeout_seconds='300' />
+ <property_group name='startd' type='framework'>
+ <propval name='ignore_error' type='astring' value='core,signal' />
+ </property_group>
+ <stability value='Evolving' />
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>Apache 2 HTTP server</loctext>
+ </common_name>
+ <documentation>
+ <manpage title='httpd' section='8' manpath='@PREFIX@/apache2/man' />
+ <doc_link name='apache.org' uri='http://httpd.apache.org' />
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/www/lighttpd/files/smf/manifest.xml b/www/lighttpd/files/smf/manifest.xml
new file mode 100644
index 00000000000..c762cda6667
--- /dev/null
+++ b/www/lighttpd/files/smf/manifest.xml
@@ -0,0 +1,34 @@
+<?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='network' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <method_context>
+ <method_environment>
+ <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/lighttpd -f %{config_file}" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/lighttpd.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Lighttpd HTTP daemon</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/www/nginx-devel/files/smf/manifest.xml b/www/nginx-devel/files/smf/manifest.xml
new file mode 100644
index 00000000000..9045e81a24b
--- /dev/null
+++ b/www/nginx-devel/files/smf/manifest.xml
@@ -0,0 +1,35 @@
+<?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='network' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <method_context>
+ <method_environment>
+ <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/nginx -c %{config_file}" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <exec_method type="method" name="refresh" exec=":kill -HUP" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/nginx.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Nginx HTTP daemon</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/www/nginx/files/smf/manifest.xml b/www/nginx/files/smf/manifest.xml
new file mode 100644
index 00000000000..9045e81a24b
--- /dev/null
+++ b/www/nginx/files/smf/manifest.xml
@@ -0,0 +1,35 @@
+<?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='network' grouping='require_all' restart_on='error' type='service'>
+ <service_fmri value='svc:/milestone/network:default' />
+ </dependency>
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
+ <service_fmri value='svc:/system/filesystem/local:default' />
+ </dependency>
+ <method_context>
+ <method_environment>
+ <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/nginx -c %{config_file}" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <exec_method type="method" name="refresh" exec=":kill -HUP" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/nginx.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Nginx HTTP daemon</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/www/php-fpm/Makefile b/www/php-fpm/Makefile
index 300055f1cd9..c0519aa6b99 100644
--- a/www/php-fpm/Makefile
+++ b/www/php-fpm/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.9 2013/09/13 09:24:19 fhajny Exp $
+# $NetBSD: Makefile,v 1.10 2014/03/11 14:34:41 jperkin Exp $
PKGNAME= ${PHP_PKG_PREFIX}-fpm-${PHP_BASE_VERS}
CATEGORIES= www
@@ -34,6 +34,7 @@ CONFIGURE_ARGS+= --enable-fpm
CONFIGURE_ARGS+= --with-fpm-user=${FPM_USER}
CONFIGURE_ARGS+= --with-fpm-group=${FPM_GROUP}
+SMF_NAME= php-fpm
RCD_SCRIPTS= php_fpm
MESSAGE_SUBST+= CGIDIR=${CGIDIR:Q}
MESSAGE_SUBST+= VARBASE=${VARBASE:Q}
diff --git a/www/php-fpm/files/smf/manifest.xml b/www/php-fpm/files/smf/manifest.xml
new file mode 100644
index 00000000000..395e8f0121c
--- /dev/null
+++ b/www/php-fpm/files/smf/manifest.xml
@@ -0,0 +1,30 @@
+<?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="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context project="php"></method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/php-fpm -y %{config_file}" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/php-fpm.conf" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">PHP FPM Service</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>
diff --git a/www/varnish/Makefile b/www/varnish/Makefile
index 37516399489..bee7c5c6fd1 100644
--- a/www/varnish/Makefile
+++ b/www/varnish/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.19 2013/12/11 16:13:22 fhajny Exp $
+# $NetBSD: Makefile,v 1.20 2014/03/11 14:34:41 jperkin Exp $
#
DISTNAME= varnish-3.0.5
@@ -34,6 +34,9 @@ PKG_HOME.${VRNUSER}= ${VRNDIR}
PKG_SHELL.${VRNUSER}= ${SH}
PKG_GECOS.${VRNUSER}= Varnish daemon user
+FILES_SUBST+= VRNUSER=${VRNUSER}
+FILES_SUBST+= VRNGROUP=${VRNGROUP}
+
RCD_SCRIPTS= varnishd varnishlog varnishncsa
PYTHON_FOR_BUILD_ONLY= yes
diff --git a/www/varnish/files/smf/manifest.xml b/www/varnish/files/smf/manifest.xml
new file mode 100644
index 00000000000..d374d5a98a4
--- /dev/null
+++ b/www/varnish/files/smf/manifest.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
+<service_bundle type="manifest" name="varnish">
+ <service name="@SMF_PREFIX@/@SMF_NAME@" type="service" version="1">
+ <create_default_instance enabled="false" />
+ <single_instance />
+ <dependency name="network" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/milestone/network:default" />
+ </dependency>
+ <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
+ <service_fmri value="svc:/system/filesystem/local" />
+ </dependency>
+ <method_context>
+ <method_environment>
+ <envvar name='PATH' value='@PREFIX@/sbin:@PREFIX@/bin:/sbin:/usr/sbin:/usr/bin' />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/varnishd -a %{listen} -l %{size} -f %{config_file} -u @VRNUSER@ -g @VRNGROUP@" timeout_seconds="60" />
+ <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" />
+ <property_group name="startd" type="framework">
+ <propval name="duration" type="astring" value="contract" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <property_group name="application" type="application">
+ <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/default.vcl" />
+ <propval name="listen" type="astring" value="0.0.0.0:8080" />
+ <propval name="size" type="astring" value="64M" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">Varnish daemon</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>