summaryrefslogtreecommitdiff
path: root/docs-xml/smbdotconf/misc/rpcdaemon.xml
blob: a06e91d613e9b0b74e561e99c1d0f457447a8905 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<samba:parameter name="rpc_daemon:DAEMON"
                 context="G"
		 type="string"
		 advanced="1" print="1"
                 xmlns:samba="http://www.samba.org/samba/DTD/samba-doc">
<description>
	<para>
	Defines whether to use the embedded code or start a separate daemon
	for the defined rpc services.
	The rpc_daemon prefix must be followed by the server name, and a value.
	</para>

	<para>
	Two possible values are currently supported:
	<programlisting>
		disabled
		fork
	</programlisting>
	</para>

	<para>
	The classic method is to run rpc services as internal daemons
	embedded in smbd, therefore the external daemons are
	<emphasis>disabled</emphasis> by default.
	</para>

	<para>
	Choosing the <emphasis>fork</emphasis> option will cause samba to fork
	a separate proces for each daemon configured this way. Each daemon may
	in turn fork a number of children used to handle requests from multiple
	smbds and direct tcp/ip connections (if the Endpoint Mapper is
	enabled). Communication with smbd happens over named pipes and require
	that said pipes are forward to the external daemon (see <smbconfoption
	name="rpc_server"/>).
	</para>

	<para>
	Forked RPC Daemons support dynamically forking children to handle
	connections. The heuristics about how many children to keep around and
	how fast to allow them to fork and also how many clients each child is
	allowed to handle concurrently is defined by parametrical options named
	after the daemon.
	Five options are currently supported:
	<programlisting>
		prefork_min_children
		prefork_max_children
		prefork_spawn_rate
		prefork_max_allowed_clients
		prefork_child_min_life
	</programlisting>

	To set one of these options use the follwing syntax:
	<programlisting>
	damonname:prefork_min_children = 5
	</programlisting>
	</para>

	<para>
	Samba includes separate daemons for spoolss, lsarpc/lsass, netlogon,
	samr, and FSRVP. Currently four daemons are available and they are
	called:
	<programlisting>
		epmd
		lsasd
		spoolssd
		fssd
	</programlisting>
	Example:
	<programlisting>
	rpc_daemon:spoolssd = fork
	</programlisting>
	</para>
</description>

<value type="default">disabled</value>
</samba:parameter>