efe80a552d38d8861747b6dfd927e552cb1ccbf7
[dragonfly.git] / secure / lib / libcrypto / man / OPENSSL_config.3
1 .\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.19)
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sp \" Vertical space (when we can't use .PP)
6 .if t .sp .5v
7 .if n .sp
8 ..
9 .de Vb \" Begin verbatim text
10 .ft CW
11 .nf
12 .ne \\$1
13 ..
14 .de Ve \" End verbatim text
15 .ft R
16 .fi
17 ..
18 .\" Set up some character translations and predefined strings.  \*(-- will
19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
20 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
21 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
22 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
23 .\" nothing in troff, for use with C<>.
24 .tr \(*W-
25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
26 .ie n \{\
27 .    ds -- \(*W-
28 .    ds PI pi
29 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
30 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
31 .    ds L" ""
32 .    ds R" ""
33 .    ds C` ""
34 .    ds C' ""
35 'br\}
36 .el\{\
37 .    ds -- \|\(em\|
38 .    ds PI \(*p
39 .    ds L" ``
40 .    ds R" ''
41 'br\}
42 .\"
43 .\" Escape single quotes in literal strings from groff's Unicode transform.
44 .ie \n(.g .ds Aq \(aq
45 .el       .ds Aq '
46 .\"
47 .\" If the F register is turned on, we'll generate index entries on stderr for
48 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
49 .\" entries marked with X<> in POD.  Of course, you'll have to process the
50 .\" output yourself in some meaningful fashion.
51 .ie \nF \{\
52 .    de IX
53 .    tm Index:\\$1\t\\n%\t"\\$2"
54 ..
55 .    nr % 0
56 .    rr F
57 .\}
58 .el \{\
59 .    de IX
60 ..
61 .\}
62 .\"
63 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
64 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
65 .    \" fudge factors for nroff and troff
66 .if n \{\
67 .    ds #H 0
68 .    ds #V .8m
69 .    ds #F .3m
70 .    ds #[ \f1
71 .    ds #] \fP
72 .\}
73 .if t \{\
74 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
75 .    ds #V .6m
76 .    ds #F 0
77 .    ds #[ \&
78 .    ds #] \&
79 .\}
80 .    \" simple accents for nroff and troff
81 .if n \{\
82 .    ds ' \&
83 .    ds ` \&
84 .    ds ^ \&
85 .    ds , \&
86 .    ds ~ ~
87 .    ds /
88 .\}
89 .if t \{\
90 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
91 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
92 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
93 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
94 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
95 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
96 .\}
97 .    \" troff and (daisy-wheel) nroff accents
98 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
99 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
100 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
101 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
102 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
103 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
104 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
105 .ds ae a\h'-(\w'a'u*4/10)'e
106 .ds Ae A\h'-(\w'A'u*4/10)'E
107 .    \" corrections for vroff
108 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
109 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
110 .    \" for low resolution devices (crt and lpr)
111 .if \n(.H>23 .if \n(.V>19 \
112 \{\
113 .    ds : e
114 .    ds 8 ss
115 .    ds o a
116 .    ds d- d\h'-1'\(ga
117 .    ds D- D\h'-1'\(hy
118 .    ds th \o'bp'
119 .    ds Th \o'LP'
120 .    ds ae ae
121 .    ds Ae AE
122 .\}
123 .rm #[ #] #H #V #F C
124 .\" ========================================================================
125 .\"
126 .IX Title "OPENSSL_config 3"
127 .TH OPENSSL_config 3 "2012-04-26" "1.0.1b" "OpenSSL"
128 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
129 .\" way too many mistakes in technical documents.
130 .if n .ad l
131 .nh
132 .SH "NAME"
133 OPENSSL_config, OPENSSL_no_config \- simple OpenSSL configuration functions
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 .Vb 1
137 \& #include <openssl/conf.h>
138 \&
139 \& void OPENSSL_config(const char *config_name);
140 \& void OPENSSL_no_config(void);
141 .Ve
142 .SH "DESCRIPTION"
143 .IX Header "DESCRIPTION"
144 \&\fIOPENSSL_config()\fR configures OpenSSL using the standard \fBopenssl.cnf\fR
145 configuration file name using \fBconfig_name\fR. If \fBconfig_name\fR is \s-1NULL\s0 then
146 the default name \fBopenssl_conf\fR will be used. Any errors are ignored. Further
147 calls to \fIOPENSSL_config()\fR will have no effect. The configuration file format
148 is documented in the \fIconf\fR\|(5) manual page.
149 .PP
150 \&\fIOPENSSL_no_config()\fR disables configuration. If called before \fIOPENSSL_config()\fR
151 no configuration takes place.
152 .SH "NOTES"
153 .IX Header "NOTES"
154 It is \fBstrongly\fR recommended that \fBall\fR new applications call \fIOPENSSL_config()\fR
155 or the more sophisticated functions such as \fICONF_modules_load()\fR during
156 initialization (that is before starting any threads). By doing this
157 an application does not need to keep track of all configuration options
158 and some new functionality can be supported automatically.
159 .PP
160 It is also possible to automatically call \fIOPENSSL_config()\fR when an application
161 calls \fIOPENSSL_add_all_algorithms()\fR by compiling an application with the
162 preprocessor symbol \fB\s-1OPENSSL_LOAD_CONF\s0\fR #define'd. In this way configuration
163 can be added without source changes.
164 .PP
165 The environment variable \fB\s-1OPENSSL_CONF\s0\fR can be set to specify the location
166 of the configuration file.
167 .PP
168 Currently \s-1ASN1\s0 OBJECTs and \s-1ENGINE\s0 configuration can be performed future
169 versions of OpenSSL will add new configuration options.
170 .PP
171 There are several reasons why calling the OpenSSL configuration routines is
172 advisable. For example new \s-1ENGINE\s0 functionality was added to OpenSSL 0.9.7.
173 In OpenSSL 0.9.7 control functions can be supported by ENGINEs, this can be
174 used (among other things) to load dynamic ENGINEs from shared libraries (DSOs).
175 However very few applications currently support the control interface and so
176 very few can load and use dynamic ENGINEs. Equally in future more sophisticated
177 ENGINEs will require certain control operations to customize them. If an
178 application calls \fIOPENSSL_config()\fR it doesn't need to know or care about
179 \&\s-1ENGINE\s0 control operations because they can be performed by editing a
180 configuration file.
181 .PP
182 Applications should free up configuration at application closedown by calling
183 \&\fICONF_modules_free()\fR.
184 .SH "RESTRICTIONS"
185 .IX Header "RESTRICTIONS"
186 The \fIOPENSSL_config()\fR function is designed to be a very simple \*(L"call it and
187 forget it\*(R" function. As a result its behaviour is somewhat limited. It ignores
188 all errors silently and it can only load from the standard configuration file
189 location for example.
190 .PP
191 It is however \fBmuch\fR better than nothing. Applications which need finer
192 control over their configuration functionality should use the configuration
193 functions such as \fICONF_load_modules()\fR directly.
194 .SH "RETURN VALUES"
195 .IX Header "RETURN VALUES"
196 Neither \fIOPENSSL_config()\fR nor \fIOPENSSL_no_config()\fR return a value.
197 .SH "SEE ALSO"
198 .IX Header "SEE ALSO"
199 \&\fIconf\fR\|(5), \fICONF_load_modules_file\fR\|(3),
200 \&\fICONF_modules_free\fR\|(3),\fICONF_modules_free\fR\|(3)
201 .SH "HISTORY"
202 .IX Header "HISTORY"
203 \&\fIOPENSSL_config()\fR and \fIOPENSSL_no_config()\fR first appeared in OpenSSL 0.9.7