d1_clnt.c (215697) | d1_clnt.c (237657) |
---|---|
1/* ssl/d1_clnt.c */ 2/* 3 * DTLS implementation written by Nagendra Modadugu 4 * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. 5 */ 6/* ==================================================================== 7 * Copyright (c) 1999-2005 The OpenSSL Project. All rights reserved. 8 * --- 243 unchanged lines hidden (view full) --- 252 break; 253 254 case SSL3_ST_CR_SRVR_HELLO_A: 255 case SSL3_ST_CR_SRVR_HELLO_B: 256 ret=ssl3_get_server_hello(s); 257 if (ret <= 0) goto end; 258 else 259 { | 1/* ssl/d1_clnt.c */ 2/* 3 * DTLS implementation written by Nagendra Modadugu 4 * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. 5 */ 6/* ==================================================================== 7 * Copyright (c) 1999-2005 The OpenSSL Project. All rights reserved. 8 * --- 243 unchanged lines hidden (view full) --- 252 break; 253 254 case SSL3_ST_CR_SRVR_HELLO_A: 255 case SSL3_ST_CR_SRVR_HELLO_B: 256 ret=ssl3_get_server_hello(s); 257 if (ret <= 0) goto end; 258 else 259 { |
260 dtls1_stop_timer(s); | |
261 if (s->hit) 262 s->state=SSL3_ST_CR_FINISHED_A; 263 else 264 s->state=DTLS1_ST_CR_HELLO_VERIFY_REQUEST_A; 265 } 266 s->init_num=0; 267 break; 268 --- 76 unchanged lines hidden (view full) --- 345 s->state=SSL3_ST_CR_SRVR_DONE_A; 346 s->init_num=0; 347 break; 348 349 case SSL3_ST_CR_SRVR_DONE_A: 350 case SSL3_ST_CR_SRVR_DONE_B: 351 ret=ssl3_get_server_done(s); 352 if (ret <= 0) goto end; | 260 if (s->hit) 261 s->state=SSL3_ST_CR_FINISHED_A; 262 else 263 s->state=DTLS1_ST_CR_HELLO_VERIFY_REQUEST_A; 264 } 265 s->init_num=0; 266 break; 267 --- 76 unchanged lines hidden (view full) --- 344 s->state=SSL3_ST_CR_SRVR_DONE_A; 345 s->init_num=0; 346 break; 347 348 case SSL3_ST_CR_SRVR_DONE_A: 349 case SSL3_ST_CR_SRVR_DONE_B: 350 ret=ssl3_get_server_done(s); 351 if (ret <= 0) goto end; |
352 dtls1_stop_timer(s); |
|
353 if (s->s3->tmp.cert_req) 354 s->state=SSL3_ST_CW_CERT_A; 355 else 356 s->state=SSL3_ST_CW_KEY_EXCH_A; 357 s->init_num=0; 358 359 break; 360 --- 37 unchanged lines hidden (view full) --- 398 if (ret <= 0) goto end; 399 s->state=SSL3_ST_CW_CHANGE_A; 400 s->init_num=0; 401 s->s3->change_cipher_spec=0; 402 break; 403 404 case SSL3_ST_CW_CHANGE_A: 405 case SSL3_ST_CW_CHANGE_B: | 353 if (s->s3->tmp.cert_req) 354 s->state=SSL3_ST_CW_CERT_A; 355 else 356 s->state=SSL3_ST_CW_KEY_EXCH_A; 357 s->init_num=0; 358 359 break; 360 --- 37 unchanged lines hidden (view full) --- 398 if (ret <= 0) goto end; 399 s->state=SSL3_ST_CW_CHANGE_A; 400 s->init_num=0; 401 s->s3->change_cipher_spec=0; 402 break; 403 404 case SSL3_ST_CW_CHANGE_A: 405 case SSL3_ST_CW_CHANGE_B: |
406 dtls1_start_timer(s); | 406 if (!s->hit) 407 dtls1_start_timer(s); |
407 ret=dtls1_send_change_cipher_spec(s, 408 SSL3_ST_CW_CHANGE_A,SSL3_ST_CW_CHANGE_B); 409 if (ret <= 0) goto end; 410 s->state=SSL3_ST_CW_FINISHED_A; 411 s->init_num=0; 412 413 s->session->cipher=s->s3->tmp.new_cipher; 414#ifdef OPENSSL_NO_COMP --- 18 unchanged lines hidden (view full) --- 433 goto end; 434 } 435 436 dtls1_reset_seq_numbers(s, SSL3_CC_WRITE); 437 break; 438 439 case SSL3_ST_CW_FINISHED_A: 440 case SSL3_ST_CW_FINISHED_B: | 408 ret=dtls1_send_change_cipher_spec(s, 409 SSL3_ST_CW_CHANGE_A,SSL3_ST_CW_CHANGE_B); 410 if (ret <= 0) goto end; 411 s->state=SSL3_ST_CW_FINISHED_A; 412 s->init_num=0; 413 414 s->session->cipher=s->s3->tmp.new_cipher; 415#ifdef OPENSSL_NO_COMP --- 18 unchanged lines hidden (view full) --- 434 goto end; 435 } 436 437 dtls1_reset_seq_numbers(s, SSL3_CC_WRITE); 438 break; 439 440 case SSL3_ST_CW_FINISHED_A: 441 case SSL3_ST_CW_FINISHED_B: |
441 dtls1_start_timer(s); | 442 if (!s->hit) 443 dtls1_start_timer(s); |
442 ret=dtls1_send_finished(s, 443 SSL3_ST_CW_FINISHED_A,SSL3_ST_CW_FINISHED_B, 444 s->method->ssl3_enc->client_finished_label, 445 s->method->ssl3_enc->client_finished_label_len); 446 if (ret <= 0) goto end; 447 s->state=SSL3_ST_CW_FLUSH; 448 449 /* clear flags */ --- 779 unchanged lines hidden --- | 444 ret=dtls1_send_finished(s, 445 SSL3_ST_CW_FINISHED_A,SSL3_ST_CW_FINISHED_B, 446 s->method->ssl3_enc->client_finished_label, 447 s->method->ssl3_enc->client_finished_label_len); 448 if (ret <= 0) goto end; 449 s->state=SSL3_ST_CW_FLUSH; 450 451 /* clear flags */ --- 779 unchanged lines hidden --- |