| Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/d1_clnt.c |
| Switch to Source code | Preprocessed file |
| Line | Source | Count | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | - | |||||||||||||
| 2 | - | |||||||||||||
| 3 | - | |||||||||||||
| 4 | - | |||||||||||||
| 5 | - | |||||||||||||
| 6 | - | |||||||||||||
| 7 | - | |||||||||||||
| 8 | - | |||||||||||||
| 9 | - | |||||||||||||
| 10 | - | |||||||||||||
| 11 | static const SSL_METHOD_INTERNAL DTLSv1_client_method_internal_data = { | - | ||||||||||||
| 12 | .version = 0xFEFF, | - | ||||||||||||
| 13 | .min_version = 0xFEFF, | - | ||||||||||||
| 14 | .max_version = 0xFEFF, | - | ||||||||||||
| 15 | .ssl_new = dtls1_new, | - | ||||||||||||
| 16 | .ssl_clear = dtls1_clear, | - | ||||||||||||
| 17 | .ssl_free = dtls1_free, | - | ||||||||||||
| 18 | .ssl_accept = ssl_undefined_function, | - | ||||||||||||
| 19 | .ssl_connect = ssl3_connect, | - | ||||||||||||
| 20 | .get_ssl_method = dtls1_get_client_method, | - | ||||||||||||
| 21 | .get_timeout = dtls1_default_timeout, | - | ||||||||||||
| 22 | .ssl_version = ssl_undefined_void_function, | - | ||||||||||||
| 23 | .ssl_renegotiate = ssl3_renegotiate, | - | ||||||||||||
| 24 | .ssl_renegotiate_check = ssl3_renegotiate_check, | - | ||||||||||||
| 25 | .ssl_get_message = dtls1_get_message, | - | ||||||||||||
| 26 | .ssl_read_bytes = dtls1_read_bytes, | - | ||||||||||||
| 27 | .ssl_write_bytes = dtls1_write_app_data_bytes, | - | ||||||||||||
| 28 | .ssl3_enc = &DTLSv1_enc_data, | - | ||||||||||||
| 29 | }; | - | ||||||||||||
| 30 | - | |||||||||||||
| 31 | static const SSL_METHOD DTLSv1_client_method_data = { | - | ||||||||||||
| 32 | .ssl_dispatch_alert = dtls1_dispatch_alert, | - | ||||||||||||
| 33 | .num_ciphers = ssl3_num_ciphers, | - | ||||||||||||
| 34 | .get_cipher = dtls1_get_cipher, | - | ||||||||||||
| 35 | .get_cipher_by_char = ssl3_get_cipher_by_char, | - | ||||||||||||
| 36 | .put_cipher_by_char = ssl3_put_cipher_by_char, | - | ||||||||||||
| 37 | .internal = &DTLSv1_client_method_internal_data, | - | ||||||||||||
| 38 | }; | - | ||||||||||||
| 39 | - | |||||||||||||
| 40 | const SSL_METHOD * | - | ||||||||||||
| 41 | DTLSv1_client_method(void) | - | ||||||||||||
| 42 | { | - | ||||||||||||
| 43 | return executed 15 times by 4 tests: &DTLSv1_client_method_data;return &DTLSv1_client_method_data;Executed by:
executed 15 times by 4 tests: return &DTLSv1_client_method_data;Executed by:
| 15 | ||||||||||||
| 44 | } | - | ||||||||||||
| 45 | - | |||||||||||||
| 46 | const SSL_METHOD * | - | ||||||||||||
| 47 | dtls1_get_client_method(int ver) | - | ||||||||||||
| 48 | { | - | ||||||||||||
| 49 | if (ver == 0xFEFF
| 0-11 | ||||||||||||
| 50 | return executed 11 times by 1 test: (DTLSv1_client_method());return (DTLSv1_client_method());Executed by:
executed 11 times by 1 test: return (DTLSv1_client_method());Executed by:
| 11 | ||||||||||||
| 51 | return never executed: (return ( ((void *)0) );never executed: return ( ((void *)0) ); | 0 | ||||||||||||
| 52 | ((void *)0) never executed: return ( ((void *)0) ); | 0 | ||||||||||||
| 53 | ); never executed: return ( ((void *)0) ); | 0 | ||||||||||||
| 54 | } | - | ||||||||||||
| 55 | - | |||||||||||||
| 56 | int | - | ||||||||||||
| 57 | dtls1_get_hello_verify(SSL *s) | - | ||||||||||||
| 58 | { | - | ||||||||||||
| 59 | long n; | - | ||||||||||||
| 60 | int al, ok = 0; | - | ||||||||||||
| 61 | size_t cookie_len; | - | ||||||||||||
| 62 | uint16_t ssl_version; | - | ||||||||||||
| 63 | CBS hello_verify_request, cookie; | - | ||||||||||||
| 64 | - | |||||||||||||
| 65 | n = s->method->internal->ssl_get_message(s, (0x126|0x1000), | - | ||||||||||||
| 66 | (0x127|0x1000), -1, s->internal->max_cert_list, &ok); | - | ||||||||||||
| 67 | - | |||||||||||||
| 68 | if (!ok
| 0-11 | ||||||||||||
| 69 | return never executed: ((int)n);return ((int)n);never executed: return ((int)n); | 0 | ||||||||||||
| 70 | - | |||||||||||||
| 71 | if ((
| 0-11 | ||||||||||||
| 72 | (s->d1->internal)->send_cookie = 0; | - | ||||||||||||
| 73 | (s->s3->internal)->tmp.reuse_message = 1; | - | ||||||||||||
| 74 | return executed 11 times by 1 test: (1);return (1);Executed by:
executed 11 times by 1 test: return (1);Executed by:
| 11 | ||||||||||||
| 75 | } | - | ||||||||||||
| 76 | - | |||||||||||||
| 77 | if (n < 0
| 0 | ||||||||||||
| 78 | goto never executed: truncated;goto truncated;never executed: goto truncated; | 0 | ||||||||||||
| 79 | - | |||||||||||||
| 80 | CBS_init(&hello_verify_request, s->internal->init_msg, n); | - | ||||||||||||
| 81 | - | |||||||||||||
| 82 | if (!CBS_get_u16(&hello_verify_request, &ssl_version)
| 0 | ||||||||||||
| 83 | goto never executed: truncated;goto truncated;never executed: goto truncated; | 0 | ||||||||||||
| 84 | - | |||||||||||||
| 85 | if (ssl_version != s->version
| 0 | ||||||||||||
| 86 | SSL_error_internal(s, 266, __FILE__, 203); | - | ||||||||||||
| 87 | s->version = (s->version & 0xff00) | (ssl_version & 0xff); | - | ||||||||||||
| 88 | al = 70; | - | ||||||||||||
| 89 | goto never executed: f_err;goto f_err;never executed: goto f_err; | 0 | ||||||||||||
| 90 | } | - | ||||||||||||
| 91 | - | |||||||||||||
| 92 | if (!CBS_get_u8_length_prefixed(&hello_verify_request, &cookie)
| 0 | ||||||||||||
| 93 | goto never executed: truncated;goto truncated;never executed: goto truncated; | 0 | ||||||||||||
| 94 | - | |||||||||||||
| 95 | if (!CBS_write_bytes(&cookie, (s->d1->internal)->cookie,
| 0 | ||||||||||||
| 96 | sizeof((s->d1->internal)->cookie), &cookie_len)
| 0 | ||||||||||||
| 97 | (s->d1->internal)->cookie_len = 0; | - | ||||||||||||
| 98 | al = 47; | - | ||||||||||||
| 99 | goto never executed: f_err;goto f_err;never executed: goto f_err; | 0 | ||||||||||||
| 100 | } | - | ||||||||||||
| 101 | (s->d1->internal)->cookie_len = cookie_len; | - | ||||||||||||
| 102 | (s->d1->internal)->send_cookie = 1; | - | ||||||||||||
| 103 | - | |||||||||||||
| 104 | return never executed: 1;return 1;never executed: return 1; | 0 | ||||||||||||
| 105 | - | |||||||||||||
| 106 | truncated: | - | ||||||||||||
| 107 | al = 50; | - | ||||||||||||
| 108 | f_err: code before this statement never executed: f_err: | 0 | ||||||||||||
| 109 | ssl3_send_alert(s, 2, al); | - | ||||||||||||
| 110 | return never executed: -1;return -1;never executed: return -1; | 0 | ||||||||||||
| 111 | } | - | ||||||||||||
| Switch to Source code | Preprocessed file |