diff options
| author | schwarze <> | 2025-06-09 12:06:23 +0000 |
|---|---|---|
| committer | schwarze <> | 2025-06-09 12:06:23 +0000 |
| commit | d3b27426fefa85c426f6b8c409e5cb1a4c34ac30 (patch) | |
| tree | 9155be3963268d6ec2e149d8617946993bf0ff1c /src | |
| parent | cce0557a3d1826b9dc413a714eaa4c844b74a497 (diff) | |
| download | openbsd-d3b27426fefa85c426f6b8c409e5cb1a4c34ac30.tar.gz openbsd-d3b27426fefa85c426f6b8c409e5cb1a4c34ac30.tar.bz2 openbsd-d3b27426fefa85c426f6b8c409e5cb1a4c34ac30.zip | |
This file is no longer relevant because the function CONF_module_add()
is no longer public. Even though ASN1_add_oid_module() still exists
as an internal function, this file contains more misleading (DSO,
OPENSSL_load_builtin_modules) than useful information, so delete it.
OK tb@
Diffstat (limited to 'src')
| -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 | |||
