3
Pluto helpers are started by pluto to do cryptographic operations.
5
Pluto will start n-1 of them, where n is the number of CPUs that you have
6
(including hypher threaded CPUs). If you have fewer than 2 CPUs, you will
7
always get at least one helper.
9
You can tell pluto never to start any helpers with the command line option
10
--nhelpers. A value of 0 forces pluto to do all operations in the main
11
process. A value of -1 tells pluto to perform the above calculation. Any
12
other value forces the number to that amount.
14
The sub-process diddle with their process titles as follows: they set the
15
argv[0] to "pluto helper". If an --interface line has been specified, then
16
they insert that string, and finally, the process helper number. e.g:
18
22174 ? Ss 0:00 /0i/sandboxes/aggr/programs/pluto/pluto --lwdnsq /0i/sandboxes/aggr/programs/lwdnsq/lwdnsq --ctlbase pluto.west --interface lo:w --ikep
19
22177 ? S 0:00 pluto helper lo:w 0 (waiting for GDB)
20
22179 ? S 0:00 lwdnsq -d
21
22185 ? Ss 0:00 /0i/sandboxes/aggr/programs/pluto/pluto --lwdnsq /0i/sandboxes/aggr/programs/lwdnsq/lwdnsq --ctlbase pluto.east --interface lo:e --ikep
22
22188 ? S 0:00 pluto helper lo:e 0 (waiting for GDB)
23
22189 ? S 0:00 lwdnsq -d
25
If the environment variable $PLUTO_CRYPTO_HELPER_DEBUG exists, then the
26
helper will mark itself as waiting, and sleep for 60 seconds. This gives a
27
developer time to attach a GDB to the process. After 60 seconds, the helper
28
changes its title back, and continues. The variable can be set with:
30
export PLUTO_CRYPTO_HELPER_DEBUG=true
32
Debug output from the helpers should go to the same destination as pluto
33
output. It may be interleaved, however. The helper uses "!" instead of "|" as
34
a prefix for its debug output.