xref: /illumos-gate/usr/src/cmd/smbsrv/smbd/server.xml (revision 99dda20867d903eec23291ba1ecb18a82d70096b)
1<?xml version="1.0"?>
2<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
3<!--
4
5 CDDL HEADER START
6
7	The contents of this file are subject to the terms of the
8	Common Development and Distribution License (the "License").
9	You may not use this file except in compliance with the License.
10
11	You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
12	or http://www.opensolaris.org/os/licensing.
13	See the License for the specific language governing permissions
14	and limitations under the License.
15
16	When distributing Covered Code, include this CDDL HEADER in each
17	file and include the License file at usr/src/OPENSOLARIS.LICENSE.
18	If applicable, add the following below this CDDL HEADER, with the
19	fields enclosed by brackets "[]" replaced with your own identifying
20	information: Portions Copyright [yyyy] [name of copyright owner]
21
22 CDDL HEADER END
23
24	Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
25	Use is subject to license terms.
26
27	ident	"%Z%%M%	%I%	%E% SMI"
28
29	NOTE:  This service manifest is not editable; its contents will
30	be overwritten by package or patch operations, including
31	operating system upgrade.  Make customizations in a different
32	file.
33
34-->
35
36<service_bundle type='manifest' name='SUNWsmbsr:smb-server'>
37
38<!-- 1. Name the service to 'network/smb/server' -->
39<service
40    name='network/smb/server'
41    type='service'
42    version='1'>
43
44	<!-- 2. Create default service instance. -->
45	<create_default_instance enabled='false' />
46
47	<!-- 3. Service has single instance -->
48	<single_instance/>
49
50	<!-- 4. Identify dependencies -->
51
52	<dependency name='network'
53	    grouping='require_any'
54	    restart_on='error'
55	    type='service'>
56		<service_fmri value='svc:/milestone/network'/>
57	</dependency>
58
59	<!-- Must have all local filesystems mounted before we share them -->
60	<dependency name='filesystem-local'
61	    grouping='require_all'
62	    restart_on='error'
63	    type='service'>
64		<service_fmri value='svc:/system/filesystem/local'/>
65	</dependency>
66
67	<!-- Must have idmap service started -->
68	<dependency name='idmap'
69	    grouping='require_all'
70	    restart_on='error'
71	    type='service'>
72		<service_fmri value='svc:/system/idmap:default'/>
73	</dependency>
74
75	<!--
76	    Want to make sure that the network/shares/group service
77	    starts after the smb/server service.  It needs to be
78	    optional in order to not cause failure if smb is
79	    disabled.
80	-->
81	<dependent name='groups'
82	    grouping="optional_all"
83	    restart_on='error' >
84		    <service_fmri value='svc:/network/shares/group'/>
85	</dependent>
86
87	<!-- 5. Identify start/stop/refresh methods -->
88	<exec_method
89		type='method'
90		name='start'
91		exec='/usr/lib/smbsrv/smbd %m'
92		timeout_seconds='60' >
93		<method_context>
94			<method_credential
95				user='root'
96				group='sys'
97				privileges='basic,net_mac_aware,net_privaddr,proc_audit,sys_devices,sys_smb' />
98		</method_context>
99	</exec_method>
100
101	<exec_method
102		type='method'
103		name='stop'
104		exec=':kill'
105		timeout_seconds='60' />
106
107	<exec_method
108		type='method'
109		name='refresh'
110		exec=':kill -HUP'
111		timeout_seconds='60' />
112
113	<property_group name='general' type='framework'>
114		<!-- To Start/Stop/Refresh the service -->
115		<propval name='action_authorization' type='astring'
116			value='solaris.smf.manage.smb' />
117		<propval name='value_authorization' type='astring'
118			value='solaris.smf.manage.smb' />
119	</property_group>
120
121	<property_group name='read' type='application'>
122		<!-- To read protected parameters -->
123		<propval name='read_authorization' type='astring'
124			value='solaris.smf.read.smb' />
125		<propval name='value_authorization' type='astring'
126			value='solaris.smf.value.smb' />
127		<propval name='machine_passwd' type='astring' value='' />
128	</property_group>
129
130	<!-- SMB service-specific general configuration defaults -->
131	<property_group name='smbd' type='application'>
132		<stability value='Evolving' />
133		<propval name='value_authorization' type='astring'
134			value='solaris.smf.value.smb' />
135		<propval name='oplock_enable' type='boolean'
136			value='false' override='true'/>
137		<propval name='autohome_map' type='astring'
138			value='/etc' override='true'/>
139		<propval name='domain_sid' type='astring'
140			value='' override='true'/>
141		<propval name='domain_member' type='boolean'
142			value='false' override='true'/>
143		<propval name='domain_name' type='astring'
144			value='WORKGROUP' override='true'/>
145		<propval name='pdc' type='astring'
146			value='' override='true'/>
147		<propval name='wins_server_1' type='astring'
148			value='' override='true'/>
149		<propval name='wins_server_2' type='astring'
150			value='' override='true'/>
151		<propval name='wins_exclude' type='astring'
152			value='' override='true'/>
153		<propval name='srvsvc_sharesetinfo_enable' type='boolean'
154			value='false' override='true'/>
155		<propval name='mlrpc_keep_alive_interval' type='integer'
156			value='30' override='true'/>
157		<propval name='max_workers' type='integer'
158			value='64' override='true'/>
159		<propval name='max_connections' type='integer'
160			value='-1' override='true'/>
161		<propval name='keep_alive' type='integer'
162			value='5400' override='true'/>
163		<propval name='restrict_anonymous' type='boolean'
164			value='false' override='true'/>
165		<propval name='signing_enabled' type='boolean'
166			value='false' override='true'/>
167		<propval name='signing_required' type='boolean'
168			value='false' override='true'/>
169		<propval name='signing_check' type='boolean'
170			value='false' override='true'/>
171		<propval name='sync_enable' type='boolean'
172			value='false' override='true'/>
173		<propval name='security' type='astring'
174			value='workgroup' override='true'/>
175		<propval name='netbios_scope' type='astring'
176			value='' override='true'/>
177		<propval name='system_comment' type='astring'
178			value='' override='true'/>
179		<propval name='lmauth_level' type='integer'
180			value='4' override='true'/>
181		<propval name='ads_site' type='astring'
182			value='' override='true'/>
183		<propval name='ddns_enable' type='boolean'
184			value='false' override='true'/>
185		<propval name='kpasswd_server' type='astring'
186			value='' override='true'/>
187		<propval name='kpasswd_domain' type='astring'
188			value='' override='true'/>
189		<propval name='kpasswd_seqnum' type='integer'
190			value='0' override='true'/>
191		<propval name='netlogon_seqnum' type='integer'
192			value='0' override='true'/>
193	</property_group>
194
195	<!-- 6. Identify faults to be ignored. -->
196	<!-- 7. Identify service model. Default service model is 'contract' -->
197	<!-- 8. Identify dependents.
198		For Solaris NAS, we may want to have the smbd service start,
199		before it reaches the svc:/milestone/multi-user-server
200		milestone.
201		<dependent
202			name='smb-server_multi-user-server'
203			grouping='optional_all'
204			restart_on='none'>
205			<service_fmri value=
206			    'svc:/milestone/multi-user-server'/>
207		</dependent>
208	-->
209	<!-- 9. Insert service milestones. None. -->
210
211	<stability value='Evolving' />
212
213	<!-- 10. Create Service Template information -->
214	<template>
215		<common_name>
216			<loctext xml:lang='C'> smbd daemon</loctext>
217		</common_name>
218		<documentation>
219			<manpage title='smbd' section='1M'
220				manpath='/usr/share/man' />
221		</documentation>
222	</template>
223
224</service>
225
226</service_bundle>
227