summaryrefslogtreecommitdiff
path: root/src/lib/libssl/ssl_stat.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libssl/ssl_stat.c')
-rw-r--r--src/lib/libssl/ssl_stat.c92
1 files changed, 70 insertions, 22 deletions
diff --git a/src/lib/libssl/ssl_stat.c b/src/lib/libssl/ssl_stat.c
index 8e12461f3b..b16d253081 100644
--- a/src/lib/libssl/ssl_stat.c
+++ b/src/lib/libssl/ssl_stat.c
@@ -59,9 +59,9 @@
59#include <stdio.h> 59#include <stdio.h>
60#include "ssl_locl.h" 60#include "ssl_locl.h"
61 61
62char *SSL_state_string_long(SSL *s) 62const char *SSL_state_string_long(const SSL *s)
63 { 63 {
64 char *str; 64 const char *str;
65 65
66 switch (s->state) 66 switch (s->state)
67 { 67 {
@@ -74,7 +74,7 @@ case SSL_ST_BEFORE|SSL_ST_CONNECT: str="before/connect initialization"; break;
74case SSL_ST_OK|SSL_ST_CONNECT: str="ok/connect SSL initialization"; break; 74case SSL_ST_OK|SSL_ST_CONNECT: str="ok/connect SSL initialization"; break;
75case SSL_ST_BEFORE|SSL_ST_ACCEPT: str="before/accept initialization"; break; 75case SSL_ST_BEFORE|SSL_ST_ACCEPT: str="before/accept initialization"; break;
76case SSL_ST_OK|SSL_ST_ACCEPT: str="ok/accept SSL initialization"; break; 76case SSL_ST_OK|SSL_ST_ACCEPT: str="ok/accept SSL initialization"; break;
77#ifndef NO_SSL2 77#ifndef OPENSSL_NO_SSL2
78case SSL2_ST_CLIENT_START_ENCRYPTION: str="SSLv2 client start encryption"; break; 78case SSL2_ST_CLIENT_START_ENCRYPTION: str="SSLv2 client start encryption"; break;
79case SSL2_ST_SERVER_START_ENCRYPTION: str="SSLv2 server start encryption"; break; 79case SSL2_ST_SERVER_START_ENCRYPTION: str="SSLv2 server start encryption"; break;
80case SSL2_ST_SEND_CLIENT_HELLO_A: str="SSLv2 write client hello A"; break; 80case SSL2_ST_SEND_CLIENT_HELLO_A: str="SSLv2 write client hello A"; break;
@@ -115,7 +115,7 @@ case SSL2_ST_X509_GET_SERVER_CERTIFICATE: str="SSLv2 X509 read server certificat
115case SSL2_ST_X509_GET_CLIENT_CERTIFICATE: str="SSLv2 X509 read client certificate"; break; 115case SSL2_ST_X509_GET_CLIENT_CERTIFICATE: str="SSLv2 X509 read client certificate"; break;
116#endif 116#endif
117 117
118#ifndef NO_SSL3 118#ifndef OPENSSL_NO_SSL3
119/* SSLv3 additions */ 119/* SSLv3 additions */
120case SSL3_ST_CW_CLNT_HELLO_A: str="SSLv3 write client hello A"; break; 120case SSL3_ST_CW_CLNT_HELLO_A: str="SSLv3 write client hello A"; break;
121case SSL3_ST_CW_CLNT_HELLO_B: str="SSLv3 write client hello B"; break; 121case SSL3_ST_CW_CLNT_HELLO_B: str="SSLv3 write client hello B"; break;
@@ -136,7 +136,7 @@ case SSL3_ST_CW_CERT_D: str="SSLv3 write client certificate D"; break;
136case SSL3_ST_CW_KEY_EXCH_A: str="SSLv3 write client key exchange A"; break; 136case SSL3_ST_CW_KEY_EXCH_A: str="SSLv3 write client key exchange A"; break;
137case SSL3_ST_CW_KEY_EXCH_B: str="SSLv3 write client key exchange B"; break; 137case SSL3_ST_CW_KEY_EXCH_B: str="SSLv3 write client key exchange B"; break;
138case SSL3_ST_CW_CERT_VRFY_A: str="SSLv3 write certificate verify A"; break; 138case SSL3_ST_CW_CERT_VRFY_A: str="SSLv3 write certificate verify A"; break;
139case SSL3_ST_CW_CERT_VRFY_B: str="SSLv3 write certificate verify A"; break; 139case SSL3_ST_CW_CERT_VRFY_B: str="SSLv3 write certificate verify B"; break;
140 140
141case SSL3_ST_CW_CHANGE_A: 141case SSL3_ST_CW_CHANGE_A:
142case SSL3_ST_SW_CHANGE_A: str="SSLv3 write change cipher spec A"; break; 142case SSL3_ST_SW_CHANGE_A: str="SSLv3 write change cipher spec A"; break;
@@ -145,7 +145,7 @@ case SSL3_ST_SW_CHANGE_B: str="SSLv3 write change cipher spec B"; break;
145case SSL3_ST_CW_FINISHED_A: 145case SSL3_ST_CW_FINISHED_A:
146case SSL3_ST_SW_FINISHED_A: str="SSLv3 write finished A"; break; 146case SSL3_ST_SW_FINISHED_A: str="SSLv3 write finished A"; break;
147case SSL3_ST_CW_FINISHED_B: 147case SSL3_ST_CW_FINISHED_B:
148case SSL3_ST_SW_FINISHED_B: str="SSLv3 write finished A"; break; 148case SSL3_ST_SW_FINISHED_B: str="SSLv3 write finished B"; break;
149case SSL3_ST_CR_CHANGE_A: 149case SSL3_ST_CR_CHANGE_A:
150case SSL3_ST_SR_CHANGE_A: str="SSLv3 read change cipher spec A"; break; 150case SSL3_ST_SR_CHANGE_A: str="SSLv3 read change cipher spec A"; break;
151case SSL3_ST_CR_CHANGE_B: 151case SSL3_ST_CR_CHANGE_B:
@@ -182,7 +182,7 @@ case SSL3_ST_SR_CERT_VRFY_A: str="SSLv3 read certificate verify A"; break;
182case SSL3_ST_SR_CERT_VRFY_B: str="SSLv3 read certificate verify B"; break; 182case SSL3_ST_SR_CERT_VRFY_B: str="SSLv3 read certificate verify B"; break;
183#endif 183#endif
184 184
185#if !defined(NO_SSL2) && !defined(NO_SSL3) 185#if !defined(OPENSSL_NO_SSL2) && !defined(OPENSSL_NO_SSL3)
186/* SSLv2/v3 compatibility states */ 186/* SSLv2/v3 compatibility states */
187/* client */ 187/* client */
188case SSL23_ST_CW_CLNT_HELLO_A: str="SSLv2/v3 write client hello A"; break; 188case SSL23_ST_CW_CLNT_HELLO_A: str="SSLv2/v3 write client hello A"; break;
@@ -199,9 +199,9 @@ default: str="unknown state"; break;
199 return(str); 199 return(str);
200 } 200 }
201 201
202char *SSL_rstate_string_long(SSL *s) 202const char *SSL_rstate_string_long(const SSL *s)
203 { 203 {
204 char *str; 204 const char *str;
205 205
206 switch (s->rstate) 206 switch (s->rstate)
207 { 207 {
@@ -213,9 +213,9 @@ char *SSL_rstate_string_long(SSL *s)
213 return(str); 213 return(str);
214 } 214 }
215 215
216char *SSL_state_string(SSL *s) 216const char *SSL_state_string(const SSL *s)
217 { 217 {
218 char *str; 218 const char *str;
219 219
220 switch (s->state) 220 switch (s->state)
221 { 221 {
@@ -223,7 +223,7 @@ case SSL_ST_BEFORE: str="PINIT "; break;
223case SSL_ST_ACCEPT: str="AINIT "; break; 223case SSL_ST_ACCEPT: str="AINIT "; break;
224case SSL_ST_CONNECT: str="CINIT "; break; 224case SSL_ST_CONNECT: str="CINIT "; break;
225case SSL_ST_OK: str="SSLOK "; break; 225case SSL_ST_OK: str="SSLOK "; break;
226#ifndef NO_SSL2 226#ifndef OPENSSL_NO_SSL2
227case SSL2_ST_CLIENT_START_ENCRYPTION: str="2CSENC"; break; 227case SSL2_ST_CLIENT_START_ENCRYPTION: str="2CSENC"; break;
228case SSL2_ST_SERVER_START_ENCRYPTION: str="2SSENC"; break; 228case SSL2_ST_SERVER_START_ENCRYPTION: str="2SSENC"; break;
229case SSL2_ST_SEND_CLIENT_HELLO_A: str="2SCH_A"; break; 229case SSL2_ST_SEND_CLIENT_HELLO_A: str="2SCH_A"; break;
@@ -264,7 +264,7 @@ case SSL2_ST_X509_GET_SERVER_CERTIFICATE: str="2X9GSC"; break;
264case SSL2_ST_X509_GET_CLIENT_CERTIFICATE: str="2X9GCC"; break; 264case SSL2_ST_X509_GET_CLIENT_CERTIFICATE: str="2X9GCC"; break;
265#endif 265#endif
266 266
267#ifndef NO_SSL3 267#ifndef OPENSSL_NO_SSL3
268/* SSLv3 additions */ 268/* SSLv3 additions */
269case SSL3_ST_SW_FLUSH: 269case SSL3_ST_SW_FLUSH:
270case SSL3_ST_CW_FLUSH: str="3FLUSH"; break; 270case SSL3_ST_CW_FLUSH: str="3FLUSH"; break;
@@ -330,7 +330,7 @@ case SSL3_ST_SR_CERT_VRFY_A: str="3RCV_A"; break;
330case SSL3_ST_SR_CERT_VRFY_B: str="3RCV_B"; break; 330case SSL3_ST_SR_CERT_VRFY_B: str="3RCV_B"; break;
331#endif 331#endif
332 332
333#if !defined(NO_SSL2) && !defined(NO_SSL3) 333#if !defined(OPENSSL_NO_SSL2) && !defined(OPENSSL_NO_SSL3)
334/* SSLv2/v3 compatibility states */ 334/* SSLv2/v3 compatibility states */
335/* client */ 335/* client */
336case SSL23_ST_CW_CLNT_HELLO_A: str="23WCHA"; break; 336case SSL23_ST_CW_CLNT_HELLO_A: str="23WCHA"; break;
@@ -347,7 +347,7 @@ default: str="UNKWN "; break;
347 return(str); 347 return(str);
348 } 348 }
349 349
350char *SSL_alert_type_string_long(int value) 350const char *SSL_alert_type_string_long(int value)
351 { 351 {
352 value>>=8; 352 value>>=8;
353 if (value == SSL3_AL_WARNING) 353 if (value == SSL3_AL_WARNING)
@@ -358,7 +358,7 @@ char *SSL_alert_type_string_long(int value)
358 return("unknown"); 358 return("unknown");
359 } 359 }
360 360
361char *SSL_alert_type_string(int value) 361const char *SSL_alert_type_string(int value)
362 { 362 {
363 value>>=8; 363 value>>=8;
364 if (value == SSL3_AL_WARNING) 364 if (value == SSL3_AL_WARNING)
@@ -369,9 +369,9 @@ char *SSL_alert_type_string(int value)
369 return("U"); 369 return("U");
370 } 370 }
371 371
372char *SSL_alert_desc_string(int value) 372const char *SSL_alert_desc_string(int value)
373 { 373 {
374 char *str; 374 const char *str;
375 375
376 switch (value & 0xff) 376 switch (value & 0xff)
377 { 377 {
@@ -387,14 +387,26 @@ char *SSL_alert_desc_string(int value)
387 case SSL3_AD_CERTIFICATE_EXPIRED: str="CE"; break; 387 case SSL3_AD_CERTIFICATE_EXPIRED: str="CE"; break;
388 case SSL3_AD_CERTIFICATE_UNKNOWN: str="CU"; break; 388 case SSL3_AD_CERTIFICATE_UNKNOWN: str="CU"; break;
389 case SSL3_AD_ILLEGAL_PARAMETER: str="IP"; break; 389 case SSL3_AD_ILLEGAL_PARAMETER: str="IP"; break;
390 case TLS1_AD_DECRYPTION_FAILED: str="DC"; break;
391 case TLS1_AD_RECORD_OVERFLOW: str="RO"; break;
392 case TLS1_AD_UNKNOWN_CA: str="CA"; break;
393 case TLS1_AD_ACCESS_DENIED: str="AD"; break;
394 case TLS1_AD_DECODE_ERROR: str="DE"; break;
395 case TLS1_AD_DECRYPT_ERROR: str="CY"; break;
396 case TLS1_AD_EXPORT_RESTRICTION: str="ER"; break;
397 case TLS1_AD_PROTOCOL_VERSION: str="PV"; break;
398 case TLS1_AD_INSUFFICIENT_SECURITY: str="IS"; break;
399 case TLS1_AD_INTERNAL_ERROR: str="IE"; break;
400 case TLS1_AD_USER_CANCELLED: str="US"; break;
401 case TLS1_AD_NO_RENEGOTIATION: str="NR"; break;
390 default: str="UK"; break; 402 default: str="UK"; break;
391 } 403 }
392 return(str); 404 return(str);
393 } 405 }
394 406
395char *SSL_alert_desc_string_long(int value) 407const char *SSL_alert_desc_string_long(int value)
396 { 408 {
397 char *str; 409 const char *str;
398 410
399 switch (value & 0xff) 411 switch (value & 0xff)
400 { 412 {
@@ -434,14 +446,50 @@ char *SSL_alert_desc_string_long(int value)
434 case SSL3_AD_ILLEGAL_PARAMETER: 446 case SSL3_AD_ILLEGAL_PARAMETER:
435 str="illegal parameter"; 447 str="illegal parameter";
436 break; 448 break;
449 case TLS1_AD_DECRYPTION_FAILED:
450 str="decryption failed";
451 break;
452 case TLS1_AD_RECORD_OVERFLOW:
453 str="record overflow";
454 break;
455 case TLS1_AD_UNKNOWN_CA:
456 str="unknown CA";
457 break;
458 case TLS1_AD_ACCESS_DENIED:
459 str="access denied";
460 break;
461 case TLS1_AD_DECODE_ERROR:
462 str="decode error";
463 break;
464 case TLS1_AD_DECRYPT_ERROR:
465 str="decrypt error";
466 break;
467 case TLS1_AD_EXPORT_RESTRICTION:
468 str="export restriction";
469 break;
470 case TLS1_AD_PROTOCOL_VERSION:
471 str="protocol version";
472 break;
473 case TLS1_AD_INSUFFICIENT_SECURITY:
474 str="insufficient security";
475 break;
476 case TLS1_AD_INTERNAL_ERROR:
477 str="internal error";
478 break;
479 case TLS1_AD_USER_CANCELLED:
480 str="user canceled";
481 break;
482 case TLS1_AD_NO_RENEGOTIATION:
483 str="no renegotiation";
484 break;
437 default: str="unknown"; break; 485 default: str="unknown"; break;
438 } 486 }
439 return(str); 487 return(str);
440 } 488 }
441 489
442char *SSL_rstate_string(SSL *s) 490const char *SSL_rstate_string(const SSL *s)
443 { 491 {
444 char *str; 492 const char *str;
445 493
446 switch (s->rstate) 494 switch (s->rstate)
447 { 495 {