diff options
Diffstat (limited to 'src/lib/libcrypto/conf/README')
-rw-r--r-- | src/lib/libcrypto/conf/README | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/src/lib/libcrypto/conf/README b/src/lib/libcrypto/conf/README deleted file mode 100644 index 96e53b34ed..0000000000 --- a/src/lib/libcrypto/conf/README +++ /dev/null | |||
@@ -1,73 +0,0 @@ | |||
1 | Configuration modules. These are a set of modules which can perform | ||
2 | various configuration functions. | ||
3 | |||
4 | Currently the routines should be called at most once when an application | ||
5 | starts up: that is before it starts any threads. | ||
6 | |||
7 | The routines read a configuration file set up like this: | ||
8 | |||
9 | ----- | ||
10 | #default section | ||
11 | openssl_conf=init_section | ||
12 | |||
13 | [init_section] | ||
14 | |||
15 | module1=value1 | ||
16 | #Second instance of module1 | ||
17 | module1.1=valueX | ||
18 | module2=value2 | ||
19 | module3=dso_literal | ||
20 | module4=dso_section | ||
21 | |||
22 | [dso_section] | ||
23 | |||
24 | path=/some/path/to/some/dso.so | ||
25 | other_stuff=other_value | ||
26 | ---- | ||
27 | |||
28 | When this file is loaded a configuration module with the specified string | ||
29 | (module* in the above example) is looked up and its init function called as: | ||
30 | |||
31 | int conf_init_func(CONF_IMODULE *md, CONF *cnf); | ||
32 | |||
33 | The function can then take whatever action is appropriate, for example further | ||
34 | lookups based on the value. Multiple instances of the same config module can be | ||
35 | loaded. | ||
36 | |||
37 | When the application closes down the modules are cleaned up by calling an | ||
38 | optional finish function: | ||
39 | |||
40 | void conf_finish_func(CONF_IMODULE *md); | ||
41 | |||
42 | The finish functions are called in reverse order: that is the last module | ||
43 | loaded is the first one cleaned up. | ||
44 | |||
45 | If no module exists with a given name then an attempt is made to load a DSO | ||
46 | with the supplied name. This might mean that "module3" attempts to load a DSO | ||
47 | called libmodule3.so or module3.dll for example. An explicit DSO name can be | ||
48 | given by including a separate section as in the module4 example above. | ||
49 | |||
50 | The DSO is expected to at least contain an initialization function: | ||
51 | |||
52 | int OPENSSL_init(CONF_IMODULE *md, CONF *cnf); | ||
53 | |||
54 | and may also include a finish function: | ||
55 | |||
56 | void OPENSSL_finish(CONF_IMODULE *md); | ||
57 | |||
58 | Static modules can also be added using, | ||
59 | |||
60 | int CONF_module_add(char *name, dso_mod_init_func *ifunc, dso_mod_finish_func | ||
61 | *ffunc); | ||
62 | |||
63 | where "name" is the name in the configuration file this function corresponds | ||
64 | to. | ||
65 | |||
66 | A set of builtin modules (currently only an ASN1 non functional test module) | ||
67 | can be added by calling OPENSSL_load_builtin_modules(). | ||
68 | |||
69 | The function OPENSSL_config() is intended as a simple configuration function | ||
70 | that any application can call to perform various default configuration tasks. | ||
71 | It uses the file openssl.cnf in the usual locations. | ||
72 | |||
73 | |||