1SSL_alert_type_string(3) OpenSSL SSL_alert_type_string(3)
2
3
4
6 SSL_alert_type_string, SSL_alert_type_string_long,
7 SSL_alert_desc_string, SSL_alert_desc_string_long - get textual
8 description of alert information
9
11 #include <openssl/ssl.h>
12
13 const char *SSL_alert_type_string(int value);
14 const char *SSL_alert_type_string_long(int value);
15
16 const char *SSL_alert_desc_string(int value);
17 const char *SSL_alert_desc_string_long(int value);
18
20 SSL_alert_type_string() returns a one letter string indicating the type
21 of the alert specified by value.
22
23 SSL_alert_type_string_long() returns a string indicating the type of
24 the alert specified by value.
25
26 SSL_alert_desc_string() returns a two letter string as a short form
27 describing the reason of the alert specified by value.
28
29 SSL_alert_desc_string_long() returns a string describing the reason of
30 the alert specified by value.
31
33 When one side of an SSL/TLS communication wants to inform the peer
34 about a special situation, it sends an alert. The alert is sent as a
35 special message and does not influence the normal data stream (unless
36 its contents results in the communication being canceled).
37
38 A warning alert is sent, when a non-fatal error condition occurs. The
39 "close notify" alert is sent as a warning alert. Other examples for
40 non-fatal errors are certificate errors ("certificate expired",
41 "unsupported certificate"), for which a warning alert may be sent.
42 (The sending party may however decide to send a fatal error.) The
43 receiving side may cancel the connection on reception of a warning
44 alert on it discretion.
45
46 Several alert messages must be sent as fatal alert messages as
47 specified by the TLS RFC. A fatal alert always leads to a connection
48 abort.
49
51 The following strings can occur for SSL_alert_type_string() or
52 SSL_alert_type_string_long():
53
54 "W"/"warning"
55 "F"/"fatal"
56 "U"/"unknown"
57 This indicates that no support is available for this alert type.
58 Probably value does not contain a correct alert message.
59
60 The following strings can occur for SSL_alert_desc_string() or
61 SSL_alert_desc_string_long():
62
63 "CN"/"close notify"
64 The connection shall be closed. This is a warning alert.
65
66 "UM"/"unexpected message"
67 An inappropriate message was received. This alert is always fatal
68 and should never be observed in communication between proper
69 implementations.
70
71 "BM"/"bad record mac"
72 This alert is returned if a record is received with an incorrect
73 MAC. This message is always fatal.
74
75 "DF"/"decompression failure"
76 The decompression function received improper input (e.g. data that
77 would expand to excessive length). This message is always fatal.
78
79 "HF"/"handshake failure"
80 Reception of a handshake_failure alert message indicates that the
81 sender was unable to negotiate an acceptable set of security
82 parameters given the options available. This is a fatal error.
83
84 "NC"/"no certificate"
85 A client, that was asked to send a certificate, does not send a
86 certificate (SSLv3 only).
87
88 "BC"/"bad certificate"
89 A certificate was corrupt, contained signatures that did not verify
90 correctly, etc
91
92 "UC"/"unsupported certificate"
93 A certificate was of an unsupported type.
94
95 "CR"/"certificate revoked"
96 A certificate was revoked by its signer.
97
98 "CE"/"certificate expired"
99 A certificate has expired or is not currently valid.
100
101 "CU"/"certificate unknown"
102 Some other (unspecified) issue arose in processing the certificate,
103 rendering it unacceptable.
104
105 "IP"/"illegal parameter"
106 A field in the handshake was out of range or inconsistent with
107 other fields. This is always fatal.
108
109 "DC"/"decryption failed"
110 A TLSCiphertext decrypted in an invalid way: either it wasn't an
111 even multiple of the block length or its padding values, when
112 checked, weren't correct. This message is always fatal.
113
114 "RO"/"record overflow"
115 A TLSCiphertext record was received which had a length more than
116 2^14+2048 bytes, or a record decrypted to a TLSCompressed record
117 with more than 2^14+1024 bytes. This message is always fatal.
118
119 "CA"/"unknown CA"
120 A valid certificate chain or partial chain was received, but the
121 certificate was not accepted because the CA certificate could not
122 be located or couldn't be matched with a known, trusted CA. This
123 message is always fatal.
124
125 "AD"/"access denied"
126 A valid certificate was received, but when access control was
127 applied, the sender decided not to proceed with negotiation. This
128 message is always fatal.
129
130 "DE"/"decode error"
131 A message could not be decoded because some field was out of the
132 specified range or the length of the message was incorrect. This
133 message is always fatal.
134
135 "CY"/"decrypt error"
136 A handshake cryptographic operation failed, including being unable
137 to correctly verify a signature, decrypt a key exchange, or
138 validate a finished message.
139
140 "ER"/"export restriction"
141 A negotiation not in compliance with export restrictions was
142 detected; for example, attempting to transfer a 1024 bit ephemeral
143 RSA key for the RSA_EXPORT handshake method. This message is always
144 fatal.
145
146 "PV"/"protocol version"
147 The protocol version the client has attempted to negotiate is
148 recognized, but not supported. (For example, old protocol versions
149 might be avoided for security reasons). This message is always
150 fatal.
151
152 "IS"/"insufficient security"
153 Returned instead of handshake_failure when a negotiation has failed
154 specifically because the server requires ciphers more secure than
155 those supported by the client. This message is always fatal.
156
157 "IE"/"internal error"
158 An internal error unrelated to the peer or the correctness of the
159 protocol makes it impossible to continue (such as a memory
160 allocation failure). This message is always fatal.
161
162 "US"/"user canceled"
163 This handshake is being canceled for some reason unrelated to a
164 protocol failure. If the user cancels an operation after the
165 handshake is complete, just closing the connection by sending a
166 close_notify is more appropriate. This alert should be followed by
167 a close_notify. This message is generally a warning.
168
169 "NR"/"no renegotiation"
170 Sent by the client in response to a hello request or by the server
171 in response to a client hello after initial handshaking. Either of
172 these would normally lead to renegotiation; when that is not
173 appropriate, the recipient should respond with this alert; at that
174 point, the original requester can decide whether to proceed with
175 the connection. One case where this would be appropriate would be
176 where a server has spawned a process to satisfy a request; the
177 process might receive security parameters (key length,
178 authentication, etc.) at startup and it might be difficult to
179 communicate changes to these parameters after that point. This
180 message is always a warning.
181
182 "UP"/"unknown PSK identity"
183 Sent by the server to indicate that it does not recognize a PSK
184 identity or an SRP identity.
185
186 "UK"/"unknown"
187 This indicates that no description is available for this alert
188 type. Probably value does not contain a correct alert message.
189
191 ssl(3), SSL_CTX_set_info_callback(3)
192
193
194
1951.0.2o 2020-01-28 SSL_alert_type_string(3)