Project

General

Profile

Plugin Load Options » History » Version 3

Tobias Brunner, 23.07.2013 12:36

1 1 Martin Willi
h1. Manual plugin load options
2 1 Martin Willi
3 3 Tobias Brunner
Many components of strongSwan have a modular design, features can be added or removed using a [[PluginList|growing list of plugins]]. This allows us to keep the footprint small while adding new functionality.
4 1 Martin Willi
5 1 Martin Willi
h2. Compile time plugin configuration
6 1 Martin Willi
7 3 Tobias Brunner
The recommended way to enable or disable plugins is during compile time. The [[AutoConf|./configure]] script has many --enable/--disable options to enable or disable specific plugins. The daemons and other tools automatically load the plugins enabled/disabled during ./configure; there is no need to manually specify the plugins to use during runtime. 
8 1 Martin Willi
9 1 Martin Willi
Using this compile-time generated plugin has some advantages, including:
10 1 Martin Willi
* Proper load order of all plugin
11 1 Martin Willi
* Gets updated automatically with new strongSwan releases: This is very important, as we might move core functionality you rely on to plugins. 
12 1 Martin Willi
13 1 Martin Willi
h2. Runtime plugin configuration
14 1 Martin Willi
15 3 Tobias Brunner
Most components can read the plugin list from [[strongswan.conf]], for example the IKE daemon charon reads the _charon.load_ key to load plugins. 
16 1 Martin Willi
17 1 Martin Willi
> It is *not* recommended to specify the plugin list manually, unless you exactly know the implications!
18 1 Martin Willi
19 1 Martin Willi
The load directive is helpful for developers or for testing frameworks. While you might get your scenario running 
20 1 Martin Willi
with a manually specified plugin list, it might not work anymore after a strongSwan update. Use the generated plugin list instead.
21 1 Martin Willi
22 1 Martin Willi
h3. Disable warning
23 1 Martin Willi
24 1 Martin Willi
If you really need the manual plugin load directive, you can disable the warning by setting
25 1 Martin Willi
<pre>
26 1 Martin Willi
starter {
27 1 Martin Willi
    load_warning = no
28 1 Martin Willi
}
29 1 Martin Willi
</pre>
30 2 Tobias Brunner
in strongswan.conf or by providing the @--disable-load-warning@ option during [[InstallationDocumentation|configuration]].
31 1 Martin Willi
32 1 Martin Willi
h3. Strict Plugins
33 1 Martin Willi
34 1 Martin Willi
In the manual load directive, you can mark specific plugins as critical: If loading a critical plugin fails, the daemon does not start. To mark a plugin as critical, append a ! to its name.