Merge from vendor branch GCC:
[dragonfly.git] / secure / lib / libssl / man / SSL_alert_type_string.3
1 .\" Automatically generated by Pod::Man version 1.15
2 .\" Wed Feb 19 16:47:44 2003
3 .\"
4 .\" Standard preamble:
5 .\" ======================================================================
6 .de Sh \" Subsection heading
7 .br
8 .if t .Sp
9 .ne 5
10 .PP
11 \fB\\$1\fR
12 .PP
13 ..
14 .de Sp \" Vertical space (when we can't use .PP)
15 .if t .sp .5v
16 .if n .sp
17 ..
18 .de Ip \" List item
19 .br
20 .ie \\n(.$>=3 .ne \\$3
21 .el .ne 3
22 .IP "\\$1" \\$2
23 ..
24 .de Vb \" Begin verbatim text
25 .ft CW
26 .nf
27 .ne \\$1
28 ..
29 .de Ve \" End verbatim text
30 .ft R
31
32 .fi
33 ..
34 .\" Set up some character translations and predefined strings.  \*(-- will
35 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
36 .\" double quote, and \*(R" will give a right double quote.  | will give a
37 .\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used
38 .\" to do unbreakable dashes and therefore won't be available.  \*(C` and
39 .\" \*(C' expand to `' in nroff, nothing in troff, for use with C<>
40 .tr \(*W-|\(bv\*(Tr
41 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
42 .ie n \{\
43 .    ds -- \(*W-
44 .    ds PI pi
45 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
46 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
47 .    ds L" ""
48 .    ds R" ""
49 .    ds C` ""
50 .    ds C' ""
51 'br\}
52 .el\{\
53 .    ds -- \|\(em\|
54 .    ds PI \(*p
55 .    ds L" ``
56 .    ds R" ''
57 'br\}
58 .\"
59 .\" If the F register is turned on, we'll generate index entries on stderr
60 .\" for titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and
61 .\" index entries marked with X<> in POD.  Of course, you'll have to process
62 .\" the output yourself in some meaningful fashion.
63 .if \nF \{\
64 .    de IX
65 .    tm Index:\\$1\t\\n%\t"\\$2"
66 ..
67 .    nr % 0
68 .    rr F
69 .\}
70 .\"
71 .\" For nroff, turn off justification.  Always turn off hyphenation; it
72 .\" makes way too many mistakes in technical documents.
73 .hy 0
74 .if n .na
75 .\"
76 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
77 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
78 .bd B 3
79 .    \" fudge factors for nroff and troff
80 .if n \{\
81 .    ds #H 0
82 .    ds #V .8m
83 .    ds #F .3m
84 .    ds #[ \f1
85 .    ds #] \fP
86 .\}
87 .if t \{\
88 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
89 .    ds #V .6m
90 .    ds #F 0
91 .    ds #[ \&
92 .    ds #] \&
93 .\}
94 .    \" simple accents for nroff and troff
95 .if n \{\
96 .    ds ' \&
97 .    ds ` \&
98 .    ds ^ \&
99 .    ds , \&
100 .    ds ~ ~
101 .    ds /
102 .\}
103 .if t \{\
104 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
105 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
106 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
107 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
108 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
109 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
110 .\}
111 .    \" troff and (daisy-wheel) nroff accents
112 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
113 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
114 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
115 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
116 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
117 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
118 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
119 .ds ae a\h'-(\w'a'u*4/10)'e
120 .ds Ae A\h'-(\w'A'u*4/10)'E
121 .    \" corrections for vroff
122 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
123 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
124 .    \" for low resolution devices (crt and lpr)
125 .if \n(.H>23 .if \n(.V>19 \
126 \{\
127 .    ds : e
128 .    ds 8 ss
129 .    ds o a
130 .    ds d- d\h'-1'\(ga
131 .    ds D- D\h'-1'\(hy
132 .    ds th \o'bp'
133 .    ds Th \o'LP'
134 .    ds ae ae
135 .    ds Ae AE
136 .\}
137 .rm #[ #] #H #V #F C
138 .\" ======================================================================
139 .\"
140 .IX Title "SSL_alert_type_string 3"
141 .TH SSL_alert_type_string 3 "0.9.7a" "2003-02-19" "OpenSSL"
142 .UC
143 .SH "NAME"
144 SSL_alert_type_string, SSL_alert_type_string_long, SSL_alert_desc_string, SSL_alert_desc_string_long \- get textual description of alert information
145 .SH "SYNOPSIS"
146 .IX Header "SYNOPSIS"
147 .Vb 1
148 \& #include <openssl/ssl.h>
149 .Ve
150 .Vb 2
151 \& const char *SSL_alert_type_string(int value);
152 \& const char *SSL_alert_type_string_long(int value);
153 .Ve
154 .Vb 2
155 \& const char *SSL_alert_desc_string(int value);
156 \& const char *SSL_alert_desc_string_long(int value);
157 .Ve
158 .SH "DESCRIPTION"
159 .IX Header "DESCRIPTION"
160 \&\fISSL_alert_type_string()\fR returns a one letter string indicating the
161 type of the alert specified by \fBvalue\fR.
162 .PP
163 \&\fISSL_alert_type_string_long()\fR returns a string indicating the type of the alert
164 specified by \fBvalue\fR.
165 .PP
166 \&\fISSL_alert_desc_string()\fR returns a two letter string as a short form
167 describing the reason of the alert specified by \fBvalue\fR.
168 .PP
169 \&\fISSL_alert_desc_string_long()\fR returns a string describing the reason
170 of the alert specified by \fBvalue\fR.
171 .SH "NOTES"
172 .IX Header "NOTES"
173 When one side of an \s-1SSL/TLS\s0 communication wants to inform the peer about
174 a special situation, it sends an alert. The alert is sent as a special message
175 and does not influence the normal data stream (unless its contents results
176 in the communication being canceled).
177 .PP
178 A warning alert is sent, when a non-fatal error condition occurs. The
179 \&\*(L"close notify\*(R" alert is sent as a warning alert. Other examples for
180 non-fatal errors are certificate errors (\*(L"certificate expired\*(R",
181 \&\*(L"unsupported certificate\*(R"), for which a warning alert may be sent.
182 (The sending party may however decide to send a fatal error.) The
183 receiving side may cancel the connection on reception of a warning
184 alert on it discretion.
185 .PP
186 Several alert messages must be sent as fatal alert messages as specified
187 by the \s-1TLS\s0 \s-1RFC\s0. A fatal alert always leads to a connection abort.
188 .SH "RETURN VALUES"
189 .IX Header "RETURN VALUES"
190 The following strings can occur for \fISSL_alert_type_string()\fR or
191 \&\fISSL_alert_type_string_long()\fR:
192 .if n .Ip """""W""""/""""warning""""" 4
193 .el .Ip "``W''/``warning''" 4
194 .IX Item ""W/warning"
195 .PD 0
196 .if n .Ip """""F""""/""""fatal""""" 4
197 .el .Ip "``F''/``fatal''" 4
198 .IX Item ""F/fatal"
199 .if n .Ip """""U""""/""""unknown""""" 4
200 .el .Ip "``U''/``unknown''" 4
201 .IX Item ""U/unknown"
202 .PD
203 This indicates that no support is available for this alert type.
204 Probably \fBvalue\fR does not contain a correct alert message.
205 .PP
206 The following strings can occur for \fISSL_alert_desc_string()\fR or
207 \&\fISSL_alert_desc_string_long()\fR:
208 .if n .Ip """""\s-1CN\s0""""/""""close notify""""" 4
209 .el .Ip "``\s-1CN\s0''/``close notify''" 4
210 .IX Item ""CN/close notify"
211 The connection shall be closed. This is a warning alert.
212 .if n .Ip """""\s-1UM\s0""""/""""unexpected message""""" 4
213 .el .Ip "``\s-1UM\s0''/``unexpected message''" 4
214 .IX Item ""UM/unexpected message"
215 An inappropriate message was received. This alert is always fatal
216 and should never be observed in communication between proper
217 implementations.
218 .if n .Ip """""\s-1BM\s0""""/""""bad record mac""""" 4
219 .el .Ip "``\s-1BM\s0''/``bad record mac''" 4
220 .IX Item ""BM/bad record mac"
221 This alert is returned if a record is received with an incorrect
222 \&\s-1MAC\s0. This message is always fatal.
223 .if n .Ip """""\s-1DF\s0""""/""""decompression failure""""" 4
224 .el .Ip "``\s-1DF\s0''/``decompression failure''" 4
225 .IX Item ""DF/decompression failure"
226 The decompression function received improper input (e.g. data
227 that would expand to excessive length). This message is always
228 fatal.
229 .if n .Ip """""\s-1HF\s0""""/""""handshake failure""""" 4
230 .el .Ip "``\s-1HF\s0''/``handshake failure''" 4
231 .IX Item ""HF/handshake failure"
232 Reception of a handshake_failure alert message indicates that the
233 sender was unable to negotiate an acceptable set of security
234 parameters given the options available. This is a fatal error.
235 .if n .Ip """""\s-1NC\s0""""/""""no certificate""""" 4
236 .el .Ip "``\s-1NC\s0''/``no certificate''" 4
237 .IX Item ""NC/no certificate"
238 A client, that was asked to send a certificate, does not send a certificate
239 (SSLv3 only).
240 .if n .Ip """""\s-1BC\s0""""/""""bad certificate""""" 4
241 .el .Ip "``\s-1BC\s0''/``bad certificate''" 4
242 .IX Item ""BC/bad certificate"
243 A certificate was corrupt, contained signatures that did not
244 verify correctly, etc
245 .if n .Ip """""\s-1UC\s0""""/""""unsupported certificate""""" 4
246 .el .Ip "``\s-1UC\s0''/``unsupported certificate''" 4
247 .IX Item ""UC/unsupported certificate"
248 A certificate was of an unsupported type.
249 .if n .Ip """""\s-1CR\s0""""/""""certificate revoked""""" 4
250 .el .Ip "``\s-1CR\s0''/``certificate revoked''" 4
251 .IX Item ""CR/certificate revoked"
252 A certificate was revoked by its signer.
253 .if n .Ip """""\s-1CE\s0""""/""""certificate expired""""" 4
254 .el .Ip "``\s-1CE\s0''/``certificate expired''" 4
255 .IX Item ""CE/certificate expired"
256 A certificate has expired or is not currently valid.
257 .if n .Ip """""\s-1CU\s0""""/""""certificate unknown""""" 4
258 .el .Ip "``\s-1CU\s0''/``certificate unknown''" 4
259 .IX Item ""CU/certificate unknown"
260 Some other (unspecified) issue arose in processing the
261 certificate, rendering it unacceptable.
262 .if n .Ip """""\s-1IP\s0""""/""""illegal parameter""""" 4
263 .el .Ip "``\s-1IP\s0''/``illegal parameter''" 4
264 .IX Item ""IP/illegal parameter"
265 A field in the handshake was out of range or inconsistent with
266 other fields. This is always fatal.
267 .if n .Ip """""\s-1DC\s0""""/""""decryption failed""""" 4
268 .el .Ip "``\s-1DC\s0''/``decryption failed''" 4
269 .IX Item ""DC/decryption failed"
270 A TLSCiphertext decrypted in an invalid way: either it wasn't an
271 even multiple of the block length or its padding values, when
272 checked, weren't correct. This message is always fatal.
273 .if n .Ip """""\s-1RO\s0""""/""""record overflow""""" 4
274 .el .Ip "``\s-1RO\s0''/``record overflow''" 4
275 .IX Item ""RO/record overflow"
276 A TLSCiphertext record was received which had a length more than
277 2^14+2048 bytes, or a record decrypted to a TLSCompressed record
278 with more than 2^14+1024 bytes. This message is always fatal.
279 .if n .Ip """""\s-1CA\s0""""/""""unknown \s-1CA\s0""""" 4
280 .el .Ip "``\s-1CA\s0''/``unknown \s-1CA\s0''" 4
281 .IX Item ""CA/unknown CA"
282 A valid certificate chain or partial chain was received, but the
283 certificate was not accepted because the \s-1CA\s0 certificate could not
284 be located or couldn't be matched with a known, trusted \s-1CA\s0.  This
285 message is always fatal.
286 .if n .Ip """""\s-1AD\s0""""/""""access denied""""" 4
287 .el .Ip "``\s-1AD\s0''/``access denied''" 4
288 .IX Item ""AD/access denied"
289 A valid certificate was received, but when access control was
290 applied, the sender decided not to proceed with negotiation.
291 This message is always fatal.
292 .if n .Ip """""\s-1DE\s0""""/""""decode error""""" 4
293 .el .Ip "``\s-1DE\s0''/``decode error''" 4
294 .IX Item ""DE/decode error"
295 A message could not be decoded because some field was out of the
296 specified range or the length of the message was incorrect. This
297 message is always fatal.
298 .if n .Ip """""\s-1CY\s0""""/""""decrypt error""""" 4
299 .el .Ip "``\s-1CY\s0''/``decrypt error''" 4
300 .IX Item ""CY/decrypt error"
301 A handshake cryptographic operation failed, including being
302 unable to correctly verify a signature, decrypt a key exchange,
303 or validate a finished message.
304 .if n .Ip """""\s-1ER\s0""""/""""export restriction""""" 4
305 .el .Ip "``\s-1ER\s0''/``export restriction''" 4
306 .IX Item ""ER/export restriction"
307 A negotiation not in compliance with export restrictions was
308 detected; for example, attempting to transfer a 1024 bit
309 ephemeral \s-1RSA\s0 key for the \s-1RSA_EXPORT\s0 handshake method. This
310 message is always fatal.
311 .if n .Ip """""\s-1PV\s0""""/""""protocol version""""" 4
312 .el .Ip "``\s-1PV\s0''/``protocol version''" 4
313 .IX Item ""PV/protocol version"
314 The protocol version the client has attempted to negotiate is
315 recognized, but not supported. (For example, old protocol
316 versions might be avoided for security reasons). This message is
317 always fatal.
318 .if n .Ip """""\s-1IS\s0""""/""""insufficient security""""" 4
319 .el .Ip "``\s-1IS\s0''/``insufficient security''" 4
320 .IX Item ""IS/insufficient security"
321 Returned instead of handshake_failure when a negotiation has
322 failed specifically because the server requires ciphers more
323 secure than those supported by the client. This message is always
324 fatal.
325 .if n .Ip """""\s-1IE\s0""""/""""internal error""""" 4
326 .el .Ip "``\s-1IE\s0''/``internal error''" 4
327 .IX Item ""IE/internal error"
328 An internal error unrelated to the peer or the correctness of the
329 protocol makes it impossible to continue (such as a memory
330 allocation failure). This message is always fatal.
331 .if n .Ip """""\s-1US\s0""""/""""user canceled""""" 4
332 .el .Ip "``\s-1US\s0''/``user canceled''" 4
333 .IX Item ""US/user canceled"
334 This handshake is being canceled for some reason unrelated to a
335 protocol failure. If the user cancels an operation after the
336 handshake is complete, just closing the connection by sending a
337 close_notify is more appropriate. This alert should be followed
338 by a close_notify. This message is generally a warning.
339 .if n .Ip """""\s-1NR\s0""""/""""no renegotiation""""" 4
340 .el .Ip "``\s-1NR\s0''/``no renegotiation''" 4
341 .IX Item ""NR/no renegotiation"
342 Sent by the client in response to a hello request or by the
343 server in response to a client hello after initial handshaking.
344 Either of these would normally lead to renegotiation; when that
345 is not appropriate, the recipient should respond with this alert;
346 at that point, the original requester can decide whether to
347 proceed with the connection. One case where this would be
348 appropriate would be where a server has spawned a process to
349 satisfy a request; the process might receive security parameters
350 (key length, authentication, etc.) at startup and it might be
351 difficult to communicate changes to these parameters after that
352 point. This message is always a warning.
353 .if n .Ip """""\s-1UK\s0""""/""""unknown""""" 4
354 .el .Ip "``\s-1UK\s0''/``unknown''" 4
355 .IX Item ""UK/unknown"
356 This indicates that no description is available for this alert type.
357 Probably \fBvalue\fR does not contain a correct alert message.
358 .SH "SEE ALSO"
359 .IX Header "SEE ALSO"
360 ssl(3), SSL_CTX_set_info_callback(3)