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