File: PlutoHelper

package info (click to toggle)
openswan 1%3A2.4.6%2Bdfsg.2-1.1%2Betch2
  • links: PTS
  • area: main
  • in suites: etch
  • size: 25,000 kB
  • ctags: 16,877
  • sloc: ansic: 121,112; sh: 19,782; xml: 9,699; asm: 4,422; perl: 4,087; makefile: 3,367; tcl: 713; exp: 657; yacc: 396; pascal: 328; lex: 289; sed: 265; awk: 124; lisp: 3
file content (35 lines) | stat: -rw-r--r-- 2,001 bytes parent folder | download | duplicates (4)
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
-*- emacs-wiki -*-

Pluto helpers are started by pluto to do cryptographic operations.

Pluto will start n-1 of them, where n is the number of CPUs that you have
(including hypher threaded CPUs). If you have fewer than 2 CPUs, you will
always get at least one helper. 

You can tell pluto never to start any helpers with the command line option
--nhelpers. A value of 0 forces pluto to do all operations in the main
process. A value of -1 tells pluto to perform the above calculation. Any
other value forces the number to that amount.

The sub-process diddle with their process titles as follows: they set the
argv[0] to "pluto helper". If an --interface line has been specified, then
they insert that string, and finally, the process helper number. e.g:

22174 ?        Ss     0:00 /0i/sandboxes/aggr/programs/pluto/pluto --lwdnsq /0i/sandboxes/aggr/programs/lwdnsq/lwdnsq --ctlbase pluto.west --interface lo:w --ikep
22177 ?        S      0:00 pluto helper lo:w   0 (waiting for GDB)                                                                                                
22179 ?        S      0:00 lwdnsq -d
22185 ?        Ss     0:00 /0i/sandboxes/aggr/programs/pluto/pluto --lwdnsq /0i/sandboxes/aggr/programs/lwdnsq/lwdnsq --ctlbase pluto.east --interface lo:e --ikep
22188 ?        S      0:00 pluto helper lo:e   0 (waiting for GDB)                                                                                                
22189 ?        S      0:00 lwdnsq -d

If the environment variable $PLUTO_CRYPTO_HELPER_DEBUG exists, then the
helper will mark itself as waiting, and sleep for 60 seconds. This gives a
developer time to attach a GDB to the process. After 60 seconds, the helper
changes its title back, and continues. The variable can be set with:

   export PLUTO_CRYPTO_HELPER_DEBUG=true

Debug output from the helpers should go to the same destination as pluto
output. It may be interleaved, however. The helper uses "!" instead of "|" as
a prefix for its debug output.