OLD | NEW |
1 /* ssl/s3_clnt.c */ | 1 /* ssl/s3_clnt.c */ |
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 * |
5 * This package is an SSL implementation written | 5 * This package is an SSL implementation written |
6 * by Eric Young (eay@cryptsoft.com). | 6 * by Eric Young (eay@cryptsoft.com). |
7 * The implementation was written so as to conform with Netscapes SSL. | 7 * The implementation was written so as to conform with Netscapes SSL. |
8 * | 8 * |
9 * This library is free for commercial and non-commercial use as long as | 9 * This library is free for commercial and non-commercial use as long as |
10 * the following conditions are aheared to. The following conditions | 10 * the following conditions are aheared to. The following conditions |
(...skipping 565 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
576 else | 576 else |
577 { | 577 { |
578 #ifndef OPENSSL_NO_TLSEXT | 578 #ifndef OPENSSL_NO_TLSEXT |
579 /* Allow NewSessionTicket if ticket expe
cted */ | 579 /* Allow NewSessionTicket if ticket expe
cted */ |
580 if (s->tlsext_ticket_expected) | 580 if (s->tlsext_ticket_expected) |
581 s->s3->tmp.next_state=SSL3_ST_CR
_SESSION_TICKET_A; | 581 s->s3->tmp.next_state=SSL3_ST_CR
_SESSION_TICKET_A; |
582 else | 582 else |
583 #endif | 583 #endif |
584 s->s3->tmp.next_state=SSL3_ST_CR
_FINISHED_A; | 584 s->s3->tmp.next_state=SSL3_ST_CR
_FINISHED_A; |
585 } | 585 } |
| 586 if (s->s3->tlsext_channel_id_valid) |
| 587 { |
| 588 /* This is a non-resumption handshake. I
f it |
| 589 * involves ChannelID, then record the |
| 590 * handshake hashes at this point in the |
| 591 * session so that any resumption of thi
s |
| 592 * session with ChannelID can sign those |
| 593 * hashes. */ |
| 594 ret = tls1_record_handshake_hashes_for_c
hannel_id(s); |
| 595 if (ret <= 0) |
| 596 goto end; |
| 597 } |
586 } | 598 } |
587 s->init_num=0; | 599 s->init_num=0; |
588 break; | 600 break; |
589 | 601 |
590 #ifndef OPENSSL_NO_TLSEXT | 602 #ifndef OPENSSL_NO_TLSEXT |
591 case SSL3_ST_CR_SESSION_TICKET_A: | 603 case SSL3_ST_CR_SESSION_TICKET_A: |
592 case SSL3_ST_CR_SESSION_TICKET_B: | 604 case SSL3_ST_CR_SESSION_TICKET_B: |
593 ret=ssl3_get_new_session_ticket(s); | 605 ret=ssl3_get_new_session_ticket(s); |
594 if (ret <= 0) goto end; | 606 if (ret <= 0) goto end; |
595 s->state=SSL3_ST_CR_FINISHED_A; | 607 s->state=SSL3_ST_CR_FINISHED_A; |
(...skipping 2975 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3571 SSL_get_client_CA_list(s), | 3583 SSL_get_client_CA_list(s), |
3572 px509, ppkey, NULL, NULL, NULL); | 3584 px509, ppkey, NULL, NULL, NULL); |
3573 if (i != 0) | 3585 if (i != 0) |
3574 return i; | 3586 return i; |
3575 } | 3587 } |
3576 #endif | 3588 #endif |
3577 if (s->ctx->client_cert_cb) | 3589 if (s->ctx->client_cert_cb) |
3578 i = s->ctx->client_cert_cb(s,px509,ppkey); | 3590 i = s->ctx->client_cert_cb(s,px509,ppkey); |
3579 return i; | 3591 return i; |
3580 } | 3592 } |
OLD | NEW |