components/sendmail/files/smtp-sendmail.xml
changeset 3649 4006eaaa7d29
child 5688 539fee4c00e9
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/sendmail/files/smtp-sendmail.xml	Fri Jan 16 12:38:45 2015 -0800
@@ -0,0 +1,244 @@
+<?xml version="1.0"?>
+<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
+<!--
+    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 (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved.
+
+    NOTE:  This service manifest is not editable; its contents will
+    be overwritten by package or patch operations, including
+    operating system upgrade.  Make customizations in a different
+    file.
+-->
+
+<service_bundle type='manifest' name='SUNWsndmr:sendmail'>
+
+<service
+	name='network/smtp'
+	type='service'
+	version='1'>
+
+	<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>
+
+	<dependency
+	    name='identity'
+	    grouping='optional_all'
+	    restart_on='refresh'
+	    type='service'>
+		<service_fmri value='svc:/system/identity:domain' />
+	</dependency>
+
+	<dependency
+	    name='system-log'
+	    grouping='optional_all'
+	    restart_on='none'
+	    type='service'>
+		<service_fmri value='svc:/system/system-log' />
+	</dependency>
+
+	<property_group name='firewall_context' type='com.sun,fw_definition'>
+		<propval name='name' type='astring' value='smtp' />
+	</property_group>
+
+	<property_group name='firewall_config' type='com.sun,fw_configuration'>
+		<propval name='policy' type='astring' value='use_global' />
+		<propval name='apply_to' type='astring' value='' />
+		<propval name='exceptions' type='astring' value='' />
+		<propval name='value_authorization' type='astring'
+			value='solaris.smf.value.firewall.config' />
+	</property_group>
+
+	<instance name='sendmail' enabled='false'>
+
+		<dependency
+		    name='config-file'
+		    grouping='require_all'
+		    restart_on='refresh'
+		    type='path'>
+			<service_fmri
+			    value='file://localhost/etc/mail/sendmail.cf' />
+		</dependency>
+
+		<dependency
+		    name='nsswitch'
+		    grouping='require_all'
+		    restart_on='refresh'
+		    type='path'>
+			<service_fmri
+			    value='file://localhost/etc/nsswitch.conf' />
+		</dependency>
+
+		<!--
+		If autofs is enabled, wait for it to get users' home
+		directories.
+		-->
+		<dependency
+		    name='autofs'
+		    grouping='optional_all'
+		    restart_on='none'
+		    type='service'>
+			<service_fmri value='svc:/system/filesystem/autofs' />
+		</dependency>
+
+		<dependent
+			name='smtp-sendmail_multi-user'
+			grouping='optional_all'
+			restart_on='none'>
+				<service_fmri
+				    value='svc:/milestone/multi-user' />
+		</dependent>
+
+		<!--
+		Sendmail is hard-coded to sleep for 60 seconds if it cannot
+		determine the FQHN, so the timeout for start must be longer
+		than that.  For details, see
+		http://www.sendmail.org/vendor/sun/differences.html#3.2
+		-->
+
+		<exec_method
+			type='method'
+			name='start'
+			exec='/lib/svc/method/smtp-sendmail start'
+			timeout_seconds='120' />
+
+		<exec_method
+			type='method'
+			name='stop'
+			exec='/lib/svc/method/smtp-sendmail stop %{restarter/contract}'
+			timeout_seconds='60' />
+
+		<exec_method
+			type='method'
+			name='refresh'
+			exec='/lib/svc/method/smtp-sendmail refresh'
+			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.sendmail' />
+		</property_group>
+
+		<property_group name='config' type='application'>
+			<propval name='db_version'
+				type='integer' value='2' />
+			<propval name='include_info'
+				type='boolean' value='false' />
+			<propval name='local_only'
+				type='boolean' value='true' />
+			<propval name='path_to_sendmail_mc'
+				type='astring' value='' />
+			<propval name='value_authorization' type='astring'
+				value='solaris.smf.value.sendmail' />
+		</property_group>
+			
+		<template>
+			<common_name>
+				<loctext xml:lang='C'>
+				sendmail SMTP mail transfer agent
+				</loctext>
+			</common_name>
+			<documentation>
+				<manpage title='sendmail' section='1M'
+				    manpath='/usr/share/man' />
+			</documentation>
+			<pg_pattern name='config' type='application'>
+				<description>
+					<loctext xml:lang='C'>
+						Configuration properties
+					</loctext>
+				</description>
+				<prop_pattern name='db_version' type='integer'>
+					<description>
+						<loctext xml:lang='C'>
+Version of Berkeley DB used to store aliases and keyed maps
+						</loctext>
+					</description>
+					<cardinality min="1" max="1"/>
+					<constraints>
+						<range min='2' max='5'/>
+					</constraints>
+				</prop_pattern>
+				<prop_pattern name='include_info' type='boolean'>
+					<description>
+						<loctext xml:lang='C'>
+Whether or not to include information (who, when, where) built sendmail.cf
+						</loctext>
+					</description>
+				</prop_pattern>
+				<prop_pattern name='local_only' type='boolean'>
+					<description>
+						<loctext xml:lang='C'>
+Whether or not to accept SMTP connections from localhost only
+						</loctext>
+					</description>
+				</prop_pattern>
+				<prop_pattern name='path_to_sendmail_mc' type='astring'>
+					<description>
+						<loctext xml:lang='C'>
+Path to .mc file from which sendmail.cf is built
+						</loctext>
+					</description>
+				</prop_pattern>
+				<prop_pattern name='value_authorization' type='astring'>
+					<description>
+						<loctext xml:lang='C'>
+Declares authorization needed to change values in the config property group.
+						</loctext>
+					</description>
+				</prop_pattern>
+			</pg_pattern>
+		</template>
+
+	</instance>
+
+	<stability value='Unstable' />
+
+</service>
+
+</service_bundle>