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