diff options
Diffstat (limited to 'src/lib/libssl/ssl_sess.c')
-rw-r--r-- | src/lib/libssl/ssl_sess.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/lib/libssl/ssl_sess.c b/src/lib/libssl/ssl_sess.c index 827360176b..9e8edd93e8 100644 --- a/src/lib/libssl/ssl_sess.c +++ b/src/lib/libssl/ssl_sess.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl_sess.c,v 1.86 2020/08/31 14:04:51 tb Exp $ */ | 1 | /* $OpenBSD: ssl_sess.c,v 1.87 2020/08/31 14:34:01 tb Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -440,7 +440,6 @@ ssl_get_prev_session(SSL *s, CBS *session_id, CBS *ext_block, int *alert) | |||
440 | SSL_SESSION *ret = NULL; | 440 | SSL_SESSION *ret = NULL; |
441 | int alert_desc = SSL_AD_INTERNAL_ERROR, fatal = 0; | 441 | int alert_desc = SSL_AD_INTERNAL_ERROR, fatal = 0; |
442 | int try_session_cache = 1; | 442 | int try_session_cache = 1; |
443 | int r; | ||
444 | 443 | ||
445 | /* This is used only by servers. */ | 444 | /* This is used only by servers. */ |
446 | 445 | ||
@@ -451,16 +450,15 @@ ssl_get_prev_session(SSL *s, CBS *session_id, CBS *ext_block, int *alert) | |||
451 | try_session_cache = 0; | 450 | try_session_cache = 0; |
452 | 451 | ||
453 | /* Sets s->internal->tlsext_ticket_expected. */ | 452 | /* Sets s->internal->tlsext_ticket_expected. */ |
454 | r = tls1_process_ticket(s, session_id, ext_block, &alert_desc, &ret); | 453 | switch (tls1_process_ticket(s, session_id, ext_block, &alert_desc, &ret)) { |
455 | switch (r) { | 454 | case TLS1_TICKET_FATAL_ERROR: |
456 | case -1: /* Error during processing */ | ||
457 | fatal = 1; | 455 | fatal = 1; |
458 | goto err; | 456 | goto err; |
459 | case 0: /* No ticket found */ | 457 | case TLS1_TICKET_NONE: |
460 | case 1: /* Zero length ticket found */ | 458 | case TLS1_TICKET_EMPTY: |
461 | break; /* Ok to carry on processing session id. */ | 459 | break; /* Ok to carry on processing session id. */ |
462 | case 2: /* Ticket found but not decrypted. */ | 460 | case TLS1_TICKET_NOT_DECRYPTED: |
463 | case 3: /* Ticket decrypted, *ret has been set. */ | 461 | case TLS1_TICKET_DECRYPTED: |
464 | try_session_cache = 0; | 462 | try_session_cache = 0; |
465 | break; | 463 | break; |
466 | default: | 464 | default: |