Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/openssl/src/ssl/statem/statem_clnt.c |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
5 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
6 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
7 | static MSG_PROCESS_RETURN tls_process_as_hello_retry_request(SSL *s, PACKET *pkt); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
8 | static MSG_PROCESS_RETURN tls_process_encrypted_extensions(SSL *s, PACKET *pkt); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
9 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
10 | static inline int cert_req_allowed(SSL *s); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
11 | static int key_exchange_expected(SSL *s); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
12 | static int ssl_cipher_list_to_bytes(SSL *s, struct stack_st_SSL_CIPHER *sk, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
13 | WPACKET *pkt); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
14 | static inline int cert_req_allowed(SSL *s) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
15 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
16 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
17 | if ((s->version > 0x0300
| 0-98 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
18 | && (
| 0-98 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
19 | || (
| 0-98 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
20 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
21 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
22 | return executed 98 times by 1 test: 1;return 1; Executed by:
executed 98 times by 1 test: return 1; Executed by:
| 98 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
23 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
24 | static int key_exchange_expected(SSL *s) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
25 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
26 | long alg_k = s->s3->tmp.new_cipher->algorithm_mkey; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
27 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
28 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
29 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
30 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
31 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
32 | if (alg_k & (0x00000002U | 0x00000004U | 0x00000100U | 0x00000080U
| 533-1421 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
33 | | 0x00000020U)
| 533-1421 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
34 | return executed 1421 times by 1 test: 1;return 1; Executed by:
executed 1421 times by 1 test: return 1; Executed by:
| 1421 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
35 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
36 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
37 | return executed 533 times by 1 test: 0;return 0; Executed by:
executed 533 times by 1 test: return 0; Executed by:
| 533 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
38 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
39 | static int ossl_statem_client13_read_transition(SSL *s, int mt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
40 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
41 | OSSL_STATEM *st = &s->statem; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
42 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
43 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
44 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
45 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
46 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
47 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
48 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
49 | switch (st->hand_state) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
50 | default never executed: :default: never executed: default: | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
51 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
52 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
53 | case never executed: TLS_ST_CW_CLNT_HELLO:case TLS_ST_CW_CLNT_HELLO: never executed: case TLS_ST_CW_CLNT_HELLO: | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
54 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
55 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
56 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
57 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
58 | if (mt == 2
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
59 | st->hand_state = TLS_ST_CR_SRVR_HELLO; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
60 | return never executed: 1;return 1; never executed: return 1; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
61 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
62 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
63 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
64 | case executed 586 times by 1 test: TLS_ST_CR_SRVR_HELLO:case TLS_ST_CR_SRVR_HELLO: Executed by:
executed 586 times by 1 test: case TLS_ST_CR_SRVR_HELLO: Executed by:
| 586 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
65 | if (mt == 8
| 0-586 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
66 | st->hand_state = TLS_ST_CR_ENCRYPTED_EXTENSIONS; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
67 | return executed 586 times by 1 test: 1;return 1; Executed by:
executed 586 times by 1 test: return 1; Executed by:
| 586 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
68 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
69 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
70 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
71 | case executed 583 times by 1 test: TLS_ST_CR_ENCRYPTED_EXTENSIONS:case TLS_ST_CR_ENCRYPTED_EXTENSIONS: Executed by:
executed 583 times by 1 test: case TLS_ST_CR_ENCRYPTED_EXTENSIONS: Executed by:
| 583 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
72 | if (s->hit
| 105-478 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
73 | if (mt == 20
| 0-105 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
74 | st->hand_state = TLS_ST_CR_FINISHED; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
75 | return executed 105 times by 1 test: 1;return 1; Executed by:
executed 105 times by 1 test: return 1; Executed by:
| 105 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
76 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
77 | } never executed: else {end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
78 | if (mt == 13
| 19-459 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
79 | st->hand_state = TLS_ST_CR_CERT_REQ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
80 | return executed 19 times by 1 test: 1;return 1; Executed by:
executed 19 times by 1 test: return 1; Executed by:
| 19 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
81 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
82 | if (mt == 11
| 0-459 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
83 | st->hand_state = TLS_ST_CR_CERT; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
84 | return executed 459 times by 1 test: 1;return 1; Executed by:
executed 459 times by 1 test: return 1; Executed by:
| 459 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
85 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
86 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
87 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
88 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
89 | case executed 19 times by 1 test: TLS_ST_CR_CERT_REQ:case TLS_ST_CR_CERT_REQ: Executed by:
executed 19 times by 1 test: case TLS_ST_CR_CERT_REQ: Executed by:
| 19 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
90 | if (mt == 11
| 0-19 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
91 | st->hand_state = TLS_ST_CR_CERT; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
92 | return executed 19 times by 1 test: 1;return 1; Executed by:
executed 19 times by 1 test: return 1; Executed by:
| 19 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
93 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
94 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
95 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
96 | case executed 474 times by 1 test: TLS_ST_CR_CERT:case TLS_ST_CR_CERT: Executed by:
executed 474 times by 1 test: case TLS_ST_CR_CERT: Executed by:
| 474 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
97 | if (mt == 15
| 0-474 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
98 | st->hand_state = TLS_ST_CR_CERT_VRFY; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
99 | return executed 474 times by 1 test: 1;return 1; Executed by:
executed 474 times by 1 test: return 1; Executed by:
| 474 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
100 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
101 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
102 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
103 | case executed 471 times by 1 test: TLS_ST_CR_CERT_VRFY:case TLS_ST_CR_CERT_VRFY: Executed by:
executed 471 times by 1 test: case TLS_ST_CR_CERT_VRFY: Executed by:
| 471 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
104 | if (mt == 20
| 0-471 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
105 | st->hand_state = TLS_ST_CR_FINISHED; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
106 | return executed 471 times by 1 test: 1;return 1; Executed by:
executed 471 times by 1 test: return 1; Executed by:
| 471 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
107 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
108 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
109 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
110 | case executed 978 times by 1 test: TLS_ST_OK:case TLS_ST_OK: Executed by:
executed 978 times by 1 test: case TLS_ST_OK: Executed by:
| 978 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
111 | if (mt == 4
| 31-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
112 | st->hand_state = TLS_ST_CR_SESSION_TICKET; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
113 | return executed 947 times by 1 test: 1;return 1; Executed by:
executed 947 times by 1 test: return 1; Executed by:
| 947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
114 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
115 | if (mt == 24
| 5-26 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
116 | st->hand_state = TLS_ST_CR_KEY_UPDATE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
117 | return executed 5 times by 1 test: 1;return 1; Executed by:
executed 5 times by 1 test: return 1; Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
118 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
119 | if (mt == 13
| 0-26 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
120 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
121 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
122 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
123 | if (!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-26 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
124 | s->post_handshake_auth = SSL_PHA_REQUESTED; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
125 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
126 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
127 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
128 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
129 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
130 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
131 | if (!tls13_restore_handshake_digest_for_pha(s)
| 0-25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
132 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
133 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
134 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
135 | st->hand_state = TLS_ST_CR_CERT_REQ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
136 | return executed 25 times by 1 test: 1;return 1; Executed by:
executed 25 times by 1 test: return 1; Executed by:
| 25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
137 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
138 | } executed 1 time by 1 test: end of block Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
139 | break; executed 1 time by 1 test: break; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
140 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
141 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
142 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
143 | return executed 1 time by 1 test: 0;return 0; Executed by:
executed 1 time by 1 test: return 0; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
144 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
145 | int ossl_statem_client_read_transition(SSL *s, int mt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
146 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
147 | OSSL_STATEM *st = &s->statem; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
148 | int ske_expected; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
149 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
150 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
151 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
152 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
153 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
154 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 1142-15365 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
155 | if (!ossl_statem_client13_read_transition(s, mt)
| 1-3110 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
156 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
157 | return executed 3110 times by 1 test: 1;return 1; Executed by:
executed 3110 times by 1 test: return 1; Executed by:
| 3110 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
158 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
159 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
160 | switch (st->hand_state) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
161 | default never executed: :default: never executed: default: | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
162 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
163 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
164 | case executed 4600 times by 1 test: TLS_ST_CW_CLNT_HELLO:case TLS_ST_CW_CLNT_HELLO: Executed by:
executed 4600 times by 1 test: case TLS_ST_CW_CLNT_HELLO: Executed by:
| 4600 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
165 | if (mt == 2
| 12-4588 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
166 | st->hand_state = TLS_ST_CR_SRVR_HELLO; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
167 | return executed 4588 times by 1 test: 1;return 1; Executed by:
executed 4588 times by 1 test: return 1; Executed by:
| 4588 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
168 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
169 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
170 | if ((
| 2-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
171 | if (mt == 3
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
172 | st->hand_state = DTLS_ST_CR_HELLO_VERIFY_REQUEST; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
173 | return executed 1 time by 1 test: 1;return 1; Executed by:
executed 1 time by 1 test: return 1; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
174 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
175 | } executed 1 time by 1 test: end of block Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
176 | break; executed 11 times by 1 test: break; Executed by:
| 11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
177 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
178 | case executed 44 times by 1 test: TLS_ST_EARLY_DATA:case TLS_ST_EARLY_DATA: Executed by:
executed 44 times by 1 test: case TLS_ST_EARLY_DATA: Executed by:
| 44 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
179 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
180 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
181 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
182 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
183 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
184 | if (mt == 2
| 0-44 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
185 | st->hand_state = TLS_ST_CR_SRVR_HELLO; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
186 | return executed 44 times by 1 test: 1;return 1; Executed by:
executed 44 times by 1 test: return 1; Executed by:
| 44 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
187 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
188 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
189 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
190 | case executed 2781 times by 1 test: TLS_ST_CR_SRVR_HELLO:case TLS_ST_CR_SRVR_HELLO: Executed by:
executed 2781 times by 1 test: case TLS_ST_CR_SRVR_HELLO: Executed by:
| 2781 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
191 | if (s->hit
| 63-2718 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
192 | if (s->ext.ticket_expected
| 4-59 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
193 | if (mt == 4
| 0-4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
194 | st->hand_state = TLS_ST_CR_SESSION_TICKET; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
195 | return executed 4 times by 1 test: 1;return 1; Executed by:
executed 4 times by 1 test: return 1; Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
196 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
197 | } never executed: else if (mt == 0x0101end of block
| 0-59 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
198 | st->hand_state = TLS_ST_CR_CHANGE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
199 | return executed 59 times by 1 test: 1;return 1; Executed by:
executed 59 times by 1 test: return 1; Executed by:
| 59 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
200 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
201 | } never executed: else {end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
202 | if ((
| 0-2552 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
203 | st->hand_state = DTLS_ST_CR_HELLO_VERIFY_REQUEST; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
204 | return never executed: 1;return 1; never executed: return 1; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
205 | } else if (s->version >= 0x0301
| 0-2718 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
206 | && s->ext.session_secret_cb !=
| 0-2718 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
207 | ((void *)0)
| 0-2718 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
208 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
209 | && s->session->ext.tick !=
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
210 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
211 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
212 | && mt == 0x0101
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
213 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
214 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
215 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
216 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
217 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
218 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
219 | s->hit = 1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
220 | st->hand_state = TLS_ST_CR_CHANGE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
221 | return never executed: 1;return 1; never executed: return 1; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
222 | } else if (!(s->s3->tmp.new_cipher->algorithm_auth
| 171-2547 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
223 | & (0x00000004U | 0x00000040U | 0x00000010U))
| 171-2547 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
224 | if (mt == 11
| 1-2546 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
225 | st->hand_state = TLS_ST_CR_CERT; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
226 | return executed 2546 times by 1 test: 1;return 1; Executed by:
executed 2546 times by 1 test: return 1; Executed by:
| 2546 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
227 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
228 | } executed 1 time by 1 test: else {end of block Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
229 | ske_expected = key_exchange_expected(s); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
230 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
231 | if (ske_expected
| 27-144 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
232 | || ((
| 0-27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
233 | && mt == 12
| 0-27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
234 | if (mt == 12
| 1-143 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
235 | st->hand_state = TLS_ST_CR_KEY_EXCH; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
236 | return executed 143 times by 1 test: 1;return 1; Executed by:
executed 143 times by 1 test: return 1; Executed by:
| 143 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
237 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
238 | } executed 1 time by 1 test: else if (mt == 13end of block Executed by:
| 0-27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
239 | && cert_req_allowed(s)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
240 | st->hand_state = TLS_ST_CR_CERT_REQ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
241 | return never executed: 1;return 1; never executed: return 1; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
242 | } else if (mt == 14
| 0-27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
243 | st->hand_state = TLS_ST_CR_SRVR_DONE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
244 | return executed 27 times by 1 test: 1;return 1; Executed by:
executed 27 times by 1 test: return 1; Executed by:
| 27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
245 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
246 | } executed 1 time by 1 test: end of block Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
247 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
248 | break; executed 2 times by 1 test: break; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
249 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
250 | case executed 1783 times by 1 test: TLS_ST_CR_CERT:case TLS_ST_CR_CERT: Executed by:
executed 1783 times by 1 test: case TLS_ST_CR_CERT: Executed by:
| 1783 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
251 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
252 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
253 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
254 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
255 | if (s->ext.status_expected
| 1-1777 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
256 | st->hand_state = TLS_ST_CR_CERT_STATUS; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
257 | return executed 5 times by 1 test: 1;return 1; Executed by:
executed 5 times by 1 test: return 1; Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
258 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
259 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
260 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
261 | case executed 5 times by 1 test: TLS_ST_CR_CERT_STATUS:case TLS_ST_CR_CERT_STATUS: Executed by:
executed 5 times by 1 test: case TLS_ST_CR_CERT_STATUS: Executed by:
code before this statement executed 1778 times by 1 test: case TLS_ST_CR_CERT_STATUS: Executed by:
| 5-1778 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
262 | ske_expected = key_exchange_expected(s); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
263 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
264 | if (ske_expected
| 0-1277 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
265 | && mt == 12
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
266 | if (mt == 12
| 30-1247 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
267 | st->hand_state = TLS_ST_CR_KEY_EXCH; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
268 | return executed 1247 times by 1 test: 1;return 1; Executed by:
executed 1247 times by 1 test: return 1; Executed by:
| 1247 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
269 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
270 | goto executed 30 times by 1 test: err;goto err; Executed by:
executed 30 times by 1 test: goto err; Executed by:
| 30 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
271 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
272 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
273 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
274 | case executed 958 times by 1 test: TLS_ST_CR_KEY_EXCH:case TLS_ST_CR_KEY_EXCH: Executed by:
executed 958 times by 1 test: case TLS_ST_CR_KEY_EXCH: Executed by:
code before this statement executed 506 times by 1 test: case TLS_ST_CR_KEY_EXCH: Executed by:
| 506-958 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
275 | if (mt == 13
| 98-1366 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
276 | if (cert_req_allowed(s)
| 0-98 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
277 | st->hand_state = TLS_ST_CR_CERT_REQ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
278 | return executed 98 times by 1 test: 1;return 1; Executed by:
executed 98 times by 1 test: return 1; Executed by:
| 98 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
279 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
280 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
281 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
282 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
283 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
284 | case executed 40 times by 1 test: TLS_ST_CR_CERT_REQ:case TLS_ST_CR_CERT_REQ: Executed by:
executed 40 times by 1 test: case TLS_ST_CR_CERT_REQ: Executed by:
code before this statement executed 1366 times by 1 test: case TLS_ST_CR_CERT_REQ: Executed by:
| 40-1366 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
285 | if (mt == 14
| 5-1401 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
286 | st->hand_state = TLS_ST_CR_SRVR_DONE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
287 | return executed 1401 times by 1 test: 1;return 1; Executed by:
executed 1401 times by 1 test: return 1; Executed by:
| 1401 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
288 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
289 | break; executed 5 times by 1 test: break; Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
290 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
291 | case executed 1200 times by 1 test: TLS_ST_CW_FINISHED:case TLS_ST_CW_FINISHED: Executed by:
executed 1200 times by 1 test: case TLS_ST_CW_FINISHED: Executed by:
| 1200 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
292 | if (s->ext.ticket_expected
| 274-926 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
293 | if (mt == 4
| 4-922 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
294 | st->hand_state = TLS_ST_CR_SESSION_TICKET; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
295 | return executed 922 times by 1 test: 1;return 1; Executed by:
executed 922 times by 1 test: return 1; Executed by:
| 922 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
296 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
297 | } executed 4 times by 1 test: else if (mt == 0x0101end of block Executed by:
| 1-273 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
298 | st->hand_state = TLS_ST_CR_CHANGE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
299 | return executed 273 times by 1 test: 1;return 1; Executed by:
executed 273 times by 1 test: return 1; Executed by:
| 273 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
300 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
301 | break; executed 5 times by 1 test: break; Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
302 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
303 | case executed 921 times by 1 test: TLS_ST_CR_SESSION_TICKET:case TLS_ST_CR_SESSION_TICKET: Executed by:
executed 921 times by 1 test: case TLS_ST_CR_SESSION_TICKET: Executed by:
| 921 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
304 | if (mt == 0x0101
| 1-920 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
305 | st->hand_state = TLS_ST_CR_CHANGE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
306 | return executed 920 times by 1 test: 1;return 1; Executed by:
executed 920 times by 1 test: return 1; Executed by:
| 920 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
307 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
308 | break; executed 1 time by 1 test: break; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
309 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
310 | case executed 1056 times by 1 test: TLS_ST_CR_CHANGE:case TLS_ST_CR_CHANGE: Executed by:
executed 1056 times by 1 test: case TLS_ST_CR_CHANGE: Executed by:
| 1056 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
311 | if (mt == 20
| 6-1050 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
312 | st->hand_state = TLS_ST_CR_FINISHED; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
313 | return executed 1050 times by 1 test: 1;return 1; Executed by:
executed 1050 times by 1 test: return 1; Executed by:
| 1050 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
314 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
315 | break; executed 6 times by 1 test: break; Executed by:
| 6 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
316 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
317 | case executed 8 times by 1 test: TLS_ST_OK:case TLS_ST_OK: Executed by:
executed 8 times by 1 test: case TLS_ST_OK: Executed by:
| 8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
318 | if (mt == 0
| 0-8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
319 | st->hand_state = TLS_ST_CR_HELLO_REQ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
320 | return executed 8 times by 1 test: 1;return 1; Executed by:
executed 8 times by 1 test: return 1; Executed by:
| 8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
321 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
322 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
323 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
324 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
325 | err: code before this statement executed 30 times by 1 test: err: Executed by:
| 30 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
326 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
327 | if ((
| 0-59 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
328 | BIO *rbio; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
329 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
330 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
331 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
332 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
333 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
334 | s->init_num = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
335 | s->rwstate = 3; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
336 | rbio = SSL_get_rbio(s); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
337 | BIO_clear_flags(rbio, ((0x01|0x02|0x04)|0x08)); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
338 | BIO_set_flags(rbio, (0x01|0x08)); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
339 | return executed 2 times by 1 test: 0;return 0; Executed by:
executed 2 times by 1 test: return 0; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
340 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
341 | ossl_statem_fatal((s), (10), (417), (244), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
342 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
343 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
344 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
345 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
346 | 395 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
347 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
348 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
349 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
350 | return executed 59 times by 1 test: 0;return 0; Executed by:
executed 59 times by 1 test: return 0; Executed by:
| 59 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
351 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
352 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
353 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
354 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
355 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
356 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
357 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
358 | static WRITE_TRAN ossl_statem_client13_write_transition(SSL *s) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
359 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
360 | OSSL_STATEM *st = &s->statem; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
361 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
362 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
363 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
364 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
365 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
366 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
367 | switch (st->hand_state) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
368 | default never executed: :default: never executed: default: | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
369 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
370 | ossl_statem_fatal((s), (80), (598), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
371 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
372 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
373 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
374 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
375 | 418 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
376 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
377 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
378 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
379 | return never executed: WRITE_TRAN_ERROR;return WRITE_TRAN_ERROR; never executed: return WRITE_TRAN_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
380 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
381 | case executed 25 times by 1 test: TLS_ST_CR_CERT_REQ:case TLS_ST_CR_CERT_REQ: Executed by:
executed 25 times by 1 test: case TLS_ST_CR_CERT_REQ: Executed by:
| 25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
382 | if (s->post_handshake_auth == SSL_PHA_REQUESTED
| 0-25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
383 | st->hand_state = TLS_ST_CW_CERT; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
384 | return executed 25 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 25 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
385 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
386 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
387 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
388 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
389 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
390 | if (!(((s->shutdown & 1) != 0) != 0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
391 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
392 | ossl_statem_fatal((s), (80), (598), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
393 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
394 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
395 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
396 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
397 | 434 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
398 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
399 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
400 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
401 | return never executed: WRITE_TRAN_ERROR;return WRITE_TRAN_ERROR; never executed: return WRITE_TRAN_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
402 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
403 | st->hand_state = TLS_ST_OK; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
404 | return never executed: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; never executed: return WRITE_TRAN_CONTINUE; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
405 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
406 | case executed 573 times by 1 test: TLS_ST_CR_FINISHED:case TLS_ST_CR_FINISHED: Executed by:
executed 573 times by 1 test: case TLS_ST_CR_FINISHED: Executed by:
| 573 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
407 | if (s->early_data_state == SSL_EARLY_DATA_WRITE_RETRY
| 3-570 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
408 | || s->early_data_state == SSL_EARLY_DATA_FINISHED_WRITING
| 37-533 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
409 | st->hand_state = TLS_ST_PENDING_EARLY_DATA_END; executed 40 times by 1 test: st->hand_state = TLS_ST_PENDING_EARLY_DATA_END; Executed by:
| 40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
410 | else if ((
| 5-528 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
411 | && s->hello_retry_request == SSL_HRR_NONE
| 17-511 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
412 | st->hand_state = TLS_ST_CW_CHANGE; executed 511 times by 1 test: st->hand_state = TLS_ST_CW_CHANGE; Executed by:
| 511 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
413 | else | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
414 | st->hand_state = (
executed 22 times by 1 test: st->hand_state = (s->s3->tmp.cert_req != 0) ? TLS_ST_CW_CERT : TLS_ST_CW_FINISHED; Executed by:
| 0-22 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
415 | : TLS_ST_CW_FINISHED; executed 22 times by 1 test: st->hand_state = (s->s3->tmp.cert_req != 0) ? TLS_ST_CW_CERT : TLS_ST_CW_FINISHED; Executed by:
| 22 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
416 | return executed 573 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 573 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 573 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
417 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
418 | case executed 40 times by 1 test: TLS_ST_PENDING_EARLY_DATA_END:case TLS_ST_PENDING_EARLY_DATA_END: Executed by:
executed 40 times by 1 test: case TLS_ST_PENDING_EARLY_DATA_END: Executed by:
| 40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
419 | if (s->ext.early_data == 2
| 18-22 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
420 | st->hand_state = TLS_ST_CW_END_OF_EARLY_DATA; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
421 | return executed 18 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 18 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
422 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
423 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
424 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
425 | case executed 18 times by 1 test: TLS_ST_CW_END_OF_EARLY_DATA:case TLS_ST_CW_END_OF_EARLY_DATA: Executed by:
executed 18 times by 1 test: case TLS_ST_CW_END_OF_EARLY_DATA: Executed by:
code before this statement executed 22 times by 1 test: case TLS_ST_CW_END_OF_EARLY_DATA: Executed by:
| 18-22 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
426 | case executed 511 times by 1 test: TLS_ST_CW_CHANGE:case TLS_ST_CW_CHANGE: Executed by:
executed 511 times by 1 test: case TLS_ST_CW_CHANGE: Executed by:
| 511 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
427 | st->hand_state = (
| 19-532 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
428 | : TLS_ST_CW_FINISHED; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
429 | return executed 551 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 551 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 551 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
430 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
431 | case executed 44 times by 1 test: TLS_ST_CW_CERT:case TLS_ST_CW_CERT: Executed by:
executed 44 times by 1 test: case TLS_ST_CW_CERT: Executed by:
| 44 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
432 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
433 | st->hand_state = (
| 18-26 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
434 | : TLS_ST_CW_FINISHED; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
435 | return executed 44 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 44 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 44 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
436 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
437 | case executed 18 times by 1 test: TLS_ST_CW_CERT_VRFY:case TLS_ST_CW_CERT_VRFY: Executed by:
executed 18 times by 1 test: case TLS_ST_CW_CERT_VRFY: Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
438 | st->hand_state = TLS_ST_CW_FINISHED; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
439 | return executed 18 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 18 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
440 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
441 | case executed 4 times by 1 test: TLS_ST_CR_KEY_UPDATE:case TLS_ST_CR_KEY_UPDATE: Executed by:
executed 4 times by 1 test: case TLS_ST_CR_KEY_UPDATE: Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
442 | if (s->key_update != -1
| 1-3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
443 | st->hand_state = TLS_ST_CW_KEY_UPDATE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
444 | return executed 1 time by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 1 time by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
445 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
446 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
447 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
448 | case executed 4 times by 1 test: TLS_ST_CW_KEY_UPDATE:case TLS_ST_CW_KEY_UPDATE: Executed by:
executed 4 times by 1 test: case TLS_ST_CW_KEY_UPDATE: Executed by:
code before this statement executed 3 times by 1 test: case TLS_ST_CW_KEY_UPDATE: Executed by:
| 3-4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
449 | case executed 947 times by 1 test: TLS_ST_CR_SESSION_TICKET:case TLS_ST_CR_SESSION_TICKET: Executed by:
executed 947 times by 1 test: case TLS_ST_CR_SESSION_TICKET: Executed by:
| 947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
450 | case executed 598 times by 1 test: TLS_ST_CW_FINISHED:case TLS_ST_CW_FINISHED: Executed by:
executed 598 times by 1 test: case TLS_ST_CW_FINISHED: Executed by:
| 598 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
451 | st->hand_state = TLS_ST_OK; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
452 | return executed 1552 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 1552 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 1552 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
453 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
454 | case executed 981 times by 1 test: TLS_ST_OK:case TLS_ST_OK: Executed by:
executed 981 times by 1 test: case TLS_ST_OK: Executed by:
| 981 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
455 | if (s->key_update != -1
| 3-978 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
456 | st->hand_state = TLS_ST_CW_KEY_UPDATE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
457 | return executed 3 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 3 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
458 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
459 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
460 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
461 | return executed 978 times by 1 test: WRITE_TRAN_FINISHED;return WRITE_TRAN_FINISHED; Executed by:
executed 978 times by 1 test: return WRITE_TRAN_FINISHED; Executed by:
| 978 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
462 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
463 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
464 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
465 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
466 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
467 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
468 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
469 | WRITE_TRAN ossl_statem_client_write_transition(SSL *s) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
470 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
471 | OSSL_STATEM *st = &s->statem; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
472 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
473 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
474 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
475 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
476 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
477 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
478 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 1281-20040 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
479 | return executed 3763 times by 1 test: ossl_statem_client13_write_transition(s);return ossl_statem_client13_write_transition(s); Executed by:
executed 3763 times by 1 test: return ossl_statem_client13_write_transition(s); Executed by:
| 3763 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
480 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
481 | switch (st->hand_state) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
482 | default never executed: :default: never executed: default: | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
483 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
484 | ossl_statem_fatal((s), (80), (599), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
485 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
486 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
487 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
488 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
489 | 520 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
490 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
491 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
492 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
493 | return never executed: WRITE_TRAN_ERROR;return WRITE_TRAN_ERROR; never executed: return WRITE_TRAN_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
494 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
495 | case executed 25 times by 1 test: TLS_ST_OK:case TLS_ST_OK: Executed by:
executed 25 times by 1 test: case TLS_ST_OK: Executed by:
| 25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
496 | if (!s->renegotiate
| 8-17 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
497 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
498 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
499 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
500 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
501 | return executed 8 times by 1 test: WRITE_TRAN_FINISHED;return WRITE_TRAN_FINISHED; Executed by:
executed 8 times by 1 test: return WRITE_TRAN_FINISHED; Executed by:
| 8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
502 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
503 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
504 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
505 | case executed 4289 times by 1 test: TLS_ST_BEFORE:case TLS_ST_BEFORE: Executed by:
executed 4289 times by 1 test: case TLS_ST_BEFORE: Executed by:
code before this statement executed 17 times by 1 test: case TLS_ST_BEFORE: Executed by:
| 17-4289 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
506 | st->hand_state = TLS_ST_CW_CLNT_HELLO; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
507 | return executed 4306 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 4306 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 4306 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
508 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
509 | case executed 4936 times by 1 test: TLS_ST_CW_CLNT_HELLO:case TLS_ST_CW_CLNT_HELLO: Executed by:
executed 4936 times by 1 test: case TLS_ST_CW_CLNT_HELLO: Executed by:
| 4936 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
510 | if (s->early_data_state == SSL_EARLY_DATA_CONNECTING
| 50-4886 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
511 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
512 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
513 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
514 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
515 | if ((
| 2-48 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
516 | st->hand_state = TLS_ST_CW_CHANGE; executed 48 times by 1 test: st->hand_state = TLS_ST_CW_CHANGE; Executed by:
| 48 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
517 | else | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
518 | st->hand_state = TLS_ST_EARLY_DATA; executed 2 times by 1 test: st->hand_state = TLS_ST_EARLY_DATA; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
519 | return executed 50 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 50 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 50 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
520 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
521 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
522 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
523 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
524 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
525 | return executed 4886 times by 1 test: WRITE_TRAN_FINISHED;return WRITE_TRAN_FINISHED; Executed by:
executed 4886 times by 1 test: return WRITE_TRAN_FINISHED; Executed by:
| 4886 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
526 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
527 | case executed 678 times by 1 test: TLS_ST_CR_SRVR_HELLO:case TLS_ST_CR_SRVR_HELLO: Executed by:
executed 678 times by 1 test: case TLS_ST_CR_SRVR_HELLO: Executed by:
| 678 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
528 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
529 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
530 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
531 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
532 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
533 | if ((
| 3-675 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
534 | && s->early_data_state != SSL_EARLY_DATA_FINISHED_WRITING
| 8-667 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
535 | st->hand_state = TLS_ST_CW_CHANGE; executed 667 times by 1 test: st->hand_state = TLS_ST_CW_CHANGE; Executed by:
| 667 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
536 | else | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
537 | st->hand_state = TLS_ST_CW_CLNT_HELLO; executed 11 times by 1 test: st->hand_state = TLS_ST_CW_CLNT_HELLO; Executed by:
| 11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
538 | return executed 678 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 678 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 678 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
539 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
540 | case executed 44 times by 1 test: TLS_ST_EARLY_DATA:case TLS_ST_EARLY_DATA: Executed by:
executed 44 times by 1 test: case TLS_ST_EARLY_DATA: Executed by:
| 44 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
541 | return executed 44 times by 1 test: WRITE_TRAN_FINISHED;return WRITE_TRAN_FINISHED; Executed by:
executed 44 times by 1 test: return WRITE_TRAN_FINISHED; Executed by:
| 44 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
542 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
543 | case executed 1 time by 1 test: DTLS_ST_CR_HELLO_VERIFY_REQUEST:case DTLS_ST_CR_HELLO_VERIFY_REQUEST: Executed by:
executed 1 time by 1 test: case DTLS_ST_CR_HELLO_VERIFY_REQUEST: Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
544 | st->hand_state = TLS_ST_CW_CLNT_HELLO; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
545 | return executed 1 time by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 1 time by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
546 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
547 | case executed 1426 times by 1 test: TLS_ST_CR_SRVR_DONE:case TLS_ST_CR_SRVR_DONE: Executed by:
executed 1426 times by 1 test: case TLS_ST_CR_SRVR_DONE: Executed by:
| 1426 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
548 | if (s->s3->tmp.cert_req
| 39-1387 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
549 | st->hand_state = TLS_ST_CW_CERT; executed 39 times by 1 test: st->hand_state = TLS_ST_CW_CERT; Executed by:
| 39 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
550 | else | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
551 | st->hand_state = TLS_ST_CW_KEY_EXCH; executed 1387 times by 1 test: st->hand_state = TLS_ST_CW_KEY_EXCH; Executed by:
| 1387 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
552 | return executed 1426 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 1426 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 1426 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
553 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
554 | case executed 39 times by 1 test: TLS_ST_CW_CERT:case TLS_ST_CW_CERT: Executed by:
executed 39 times by 1 test: case TLS_ST_CW_CERT: Executed by:
| 39 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
555 | st->hand_state = TLS_ST_CW_KEY_EXCH; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
556 | return executed 39 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 39 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 39 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
557 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
558 | case executed 1393 times by 1 test: TLS_ST_CW_KEY_EXCH:case TLS_ST_CW_KEY_EXCH: Executed by:
executed 1393 times by 1 test: case TLS_ST_CW_KEY_EXCH: Executed by:
| 1393 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
559 | if (s->s3->tmp.cert_req == 1
| 25-1368 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
560 | st->hand_state = TLS_ST_CW_CERT_VRFY; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
561 | } executed 25 times by 1 test: else {end of block Executed by:
| 25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
562 | st->hand_state = TLS_ST_CW_CHANGE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
563 | } executed 1368 times by 1 test: end of block Executed by:
| 1368 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
564 | if (s->s3->flags & 0x0010
| 0-1393 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
565 | st->hand_state = TLS_ST_CW_CHANGE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
566 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
567 | return executed 1393 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 1393 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 1393 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
568 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
569 | case executed 25 times by 1 test: TLS_ST_CW_CERT_VRFY:case TLS_ST_CW_CERT_VRFY: Executed by:
executed 25 times by 1 test: case TLS_ST_CW_CERT_VRFY: Executed by:
| 25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
570 | st->hand_state = TLS_ST_CW_CHANGE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
571 | return executed 25 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 25 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
572 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
573 | case executed 2171 times by 1 test: TLS_ST_CW_CHANGE:case TLS_ST_CW_CHANGE: Executed by:
executed 2171 times by 1 test: case TLS_ST_CW_CHANGE: Executed by:
| 2171 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
574 | if (s->hello_retry_request == SSL_HRR_PENDING
| 667-1504 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
575 | st->hand_state = TLS_ST_CW_CLNT_HELLO; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
576 | } executed 667 times by 1 test: else if (s->early_data_state == SSL_EARLY_DATA_CONNECTINGend of block Executed by:
| 48-1456 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
577 | st->hand_state = TLS_ST_EARLY_DATA; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
578 | } executed 48 times by 1 test: else {end of block Executed by:
| 48 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
579 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
580 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
581 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
582 | if (!(s->method->ssl3_enc->enc_flags & 0x8)
| 21-1274 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
583 | st->hand_state = TLS_ST_CW_NEXT_PROTO; executed 21 times by 1 test: st->hand_state = TLS_ST_CW_NEXT_PROTO; Executed by:
| 21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
584 | else | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
585 | st->hand_state = TLS_ST_CW_FINISHED; executed 1435 times by 1 test: st->hand_state = TLS_ST_CW_FINISHED; Executed by:
| 1435 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
586 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
587 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
588 | return executed 2171 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 2171 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 2171 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
589 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
590 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
591 | case executed 21 times by 1 test: TLS_ST_CW_NEXT_PROTO:case TLS_ST_CW_NEXT_PROTO: Executed by:
executed 21 times by 1 test: case TLS_ST_CW_NEXT_PROTO: Executed by:
| 21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
592 | st->hand_state = TLS_ST_CW_FINISHED; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
593 | return executed 21 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 21 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
594 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
595 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
596 | case executed 1456 times by 1 test: TLS_ST_CW_FINISHED:case TLS_ST_CW_FINISHED: Executed by:
executed 1456 times by 1 test: case TLS_ST_CW_FINISHED: Executed by:
| 1456 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
597 | if (s->hit
| 63-1393 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
598 | st->hand_state = TLS_ST_OK; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
599 | return executed 63 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 63 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 63 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
600 | } else { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
601 | return executed 1393 times by 1 test: WRITE_TRAN_FINISHED;return WRITE_TRAN_FINISHED; Executed by:
executed 1393 times by 1 test: return WRITE_TRAN_FINISHED; Executed by:
| 1393 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
602 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
603 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
604 | case executed 1046 times by 1 test: TLS_ST_CR_FINISHED:case TLS_ST_CR_FINISHED: Executed by:
executed 1046 times by 1 test: case TLS_ST_CR_FINISHED: Executed by:
| 1046 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
605 | if (s->hit
| 63-983 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
606 | st->hand_state = TLS_ST_CW_CHANGE; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
607 | return executed 63 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 63 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 63 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
608 | } else { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
609 | st->hand_state = TLS_ST_OK; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
610 | return executed 983 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 983 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 983 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
611 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
612 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
613 | case executed 8 times by 1 test: TLS_ST_CR_HELLO_REQ:case TLS_ST_CR_HELLO_REQ: Executed by:
executed 8 times by 1 test: case TLS_ST_CR_HELLO_REQ: Executed by:
| 8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
614 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
615 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
616 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
617 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
618 | if (ssl3_renegotiate_check(s, 1)
| 1-7 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
619 | if (!tls_setup_handshake(s)
| 0-7 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
620 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
621 | return never executed: WRITE_TRAN_ERROR;return WRITE_TRAN_ERROR; never executed: return WRITE_TRAN_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
622 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
623 | st->hand_state = TLS_ST_CW_CLNT_HELLO; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
624 | return executed 7 times by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 7 times by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 7 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
625 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
626 | st->hand_state = TLS_ST_OK; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
627 | return executed 1 time by 1 test: WRITE_TRAN_CONTINUE;return WRITE_TRAN_CONTINUE; Executed by:
executed 1 time by 1 test: return WRITE_TRAN_CONTINUE; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
628 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
629 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
630 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
631 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
632 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
633 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
634 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
635 | WORK_STATE ossl_statem_client_pre_work(SSL *s, WORK_STATE wst) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
636 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
637 | OSSL_STATEM *st = &s->statem; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
638 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
639 | switch (st->hand_state) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
640 | default executed 3649 times by 1 test: :default: Executed by:
executed 3649 times by 1 test: default: Executed by:
| 3649 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
641 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
642 | break; executed 3649 times by 1 test: break; Executed by:
| 3649 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
643 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
644 | case executed 4992 times by 1 test: TLS_ST_CW_CLNT_HELLO:case TLS_ST_CW_CLNT_HELLO: Executed by:
executed 4992 times by 1 test: case TLS_ST_CW_CLNT_HELLO: Executed by:
| 4992 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
645 | s->shutdown = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
646 | if ((
| 192-4800 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
647 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
648 | if (!ssl3_init_finished_mac(s)
| 0-192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
649 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
650 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
651 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
652 | } executed 192 times by 1 test: end of block Executed by:
| 192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
653 | break; executed 4992 times by 1 test: break; Executed by:
| 4992 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
654 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
655 | case executed 2682 times by 1 test: TLS_ST_CW_CHANGE:case TLS_ST_CW_CHANGE: Executed by:
executed 2682 times by 1 test: case TLS_ST_CW_CHANGE: Executed by:
| 2682 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
656 | if ((
| 182-2500 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
657 | if (s->hit
| 17-165 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
658 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
659 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
660 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
661 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
662 | st->use_timer = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
663 | } executed 17 times by 1 test: end of block Executed by:
| 17 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
664 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
665 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
666 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
667 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
668 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
669 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
670 | } executed 182 times by 1 test: end of block Executed by:
| 182 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
671 | break; executed 2682 times by 1 test: break; Executed by:
| 2682 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
672 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
673 | case executed 40 times by 1 test: TLS_ST_PENDING_EARLY_DATA_END:case TLS_ST_PENDING_EARLY_DATA_END: Executed by:
executed 40 times by 1 test: case TLS_ST_PENDING_EARLY_DATA_END: Executed by:
| 40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
674 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
675 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
676 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
677 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
678 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
679 | if (s->early_data_state == SSL_EARLY_DATA_FINISHED_WRITING
| 3-37 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
680 | || s->early_data_state == SSL_EARLY_DATA_NONE
| 0-3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
681 | return executed 37 times by 1 test: WORK_FINISHED_CONTINUE;return WORK_FINISHED_CONTINUE; Executed by:
executed 37 times by 1 test: return WORK_FINISHED_CONTINUE; Executed by:
| 37 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
682 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
683 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
684 | case executed 50 times by 1 test: TLS_ST_EARLY_DATA:case TLS_ST_EARLY_DATA: Executed by:
executed 50 times by 1 test: case TLS_ST_EARLY_DATA: Executed by:
code before this statement executed 3 times by 1 test: case TLS_ST_EARLY_DATA: Executed by:
| 3-50 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
685 | return executed 53 times by 1 test: tls_finish_handshake(s, wst, 0, 1);return tls_finish_handshake(s, wst, 0, 1); Executed by:
executed 53 times by 1 test: return tls_finish_handshake(s, wst, 0, 1); Executed by:
| 53 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
686 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
687 | case executed 2599 times by 1 test: TLS_ST_OK:case TLS_ST_OK: Executed by:
executed 2599 times by 1 test: case TLS_ST_OK: Executed by:
| 2599 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
688 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
689 | return executed 2599 times by 1 test: tls_finish_handshake(s, wst, 1, 1);return tls_finish_handshake(s, wst, 1, 1); Executed by:
executed 2599 times by 1 test: return tls_finish_handshake(s, wst, 1, 1); Executed by:
| 2599 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
690 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
691 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
692 | return executed 11323 times by 1 test: WORK_FINISHED_CONTINUE;return WORK_FINISHED_CONTINUE; Executed by:
executed 11323 times by 1 test: return WORK_FINISHED_CONTINUE; Executed by:
| 11323 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
693 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
694 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
695 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
696 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
697 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
698 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
699 | WORK_STATE ossl_statem_client_post_work(SSL *s, WORK_STATE wst) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
700 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
701 | OSSL_STATEM *st = &s->statem; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
702 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
703 | s->init_num = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
704 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
705 | switch (st->hand_state) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
706 | default executed 184 times by 1 test: :default: Executed by:
executed 184 times by 1 test: default: Executed by:
| 184 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
707 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
708 | break; executed 184 times by 1 test: break; Executed by:
| 184 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
709 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
710 | case executed 4980 times by 1 test: TLS_ST_CW_CLNT_HELLO:case TLS_ST_CW_CLNT_HELLO: Executed by:
executed 4980 times by 1 test: case TLS_ST_CW_CLNT_HELLO: Executed by:
| 4980 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
711 | if (s->early_data_state == SSL_EARLY_DATA_CONNECTING
| 50-4930 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
712 | && s->max_early_data > 0
| 0-50 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
713 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
714 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
715 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
716 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
717 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
718 | if ((
| 2-48 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
719 | if (!tls13_change_cipher_state(s,
| 0-2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
720 | 0x040 | (0x010|0x002))
| 0-2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
721 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
722 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
723 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
724 | } executed 2 times by 1 test: end of block Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
725 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
726 | } executed 50 times by 1 test: else if (!statem_flush(s)end of block Executed by:
| 44-4886 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
727 | return executed 44 times by 1 test: WORK_MORE_A;return WORK_MORE_A; Executed by:
executed 44 times by 1 test: return WORK_MORE_A; Executed by:
| 44 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
728 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
729 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
730 | if ((
| 192-4744 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
731 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
732 | s->first_packet = 1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
733 | } executed 192 times by 1 test: end of block Executed by:
| 192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
734 | break; executed 4936 times by 1 test: break; Executed by:
| 4936 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
735 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
736 | case executed 18 times by 1 test: TLS_ST_CW_END_OF_EARLY_DATA:case TLS_ST_CW_END_OF_EARLY_DATA: Executed by:
executed 18 times by 1 test: case TLS_ST_CW_END_OF_EARLY_DATA: Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
737 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
738 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
739 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
740 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
741 | EVP_CIPHER_CTX_free(s->enc_write_ctx); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
742 | s->enc_write_ctx = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
743 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
744 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
745 | break; executed 18 times by 1 test: break; Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
746 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
747 | case executed 1393 times by 1 test: TLS_ST_CW_KEY_EXCH:case TLS_ST_CW_KEY_EXCH: Executed by:
executed 1393 times by 1 test: case TLS_ST_CW_KEY_EXCH: Executed by:
| 1393 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
748 | if (tls_client_key_exchange_post_work(s) == 0
| 0-1393 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
749 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
750 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
751 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
752 | break; executed 1393 times by 1 test: break; Executed by:
| 1393 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
753 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
754 | case executed 2682 times by 1 test: TLS_ST_CW_CHANGE:case TLS_ST_CW_CHANGE: Executed by:
executed 2682 times by 1 test: case TLS_ST_CW_CHANGE: Executed by:
| 2682 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
755 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 182-2500 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
756 | break; executed 1178 times by 1 test: break; Executed by:
| 1178 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
757 | if (s->early_data_state == SSL_EARLY_DATA_CONNECTING
| 48-1456 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
758 | && s->max_early_data > 0
| 0-48 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
759 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
760 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
761 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
762 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
763 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
764 | if (!tls13_change_cipher_state(s,
| 0-48 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
765 | 0x040 | (0x010|0x002))
| 0-48 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
766 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
767 | break; executed 48 times by 1 test: break; Executed by:
| 48 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
768 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
769 | s->session->cipher = s->s3->tmp.new_cipher; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
770 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
771 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
772 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
773 | if (s->s3->tmp.new_compression ==
| 0-1456 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
774 | ((void *)0)
| 0-1456 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
775 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
776 | s->session->compress_meth = 0; executed 1456 times by 1 test: s->session->compress_meth = 0; Executed by:
| 1456 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
777 | else | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
778 | s->session->compress_meth = s->s3->tmp.new_compression->id; never executed: s->session->compress_meth = s->s3->tmp.new_compression->id; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
779 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
780 | if (!s->method->ssl3_enc->setup_key_block(s)
| 0-1456 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
781 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
782 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
783 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
784 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
785 | if (!s->method->ssl3_enc->change_cipher_state(s,
| 0-1456 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
786 | (0x010|0x002))
| 0-1456 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
787 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
788 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
789 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
790 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
791 | if ((
| 182-1274 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
792 | dtls1_reset_seq_numbers(s, 0x002); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
793 | } executed 182 times by 1 test: end of block Executed by:
| 182 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
794 | break; executed 1456 times by 1 test: break; Executed by:
| 1456 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
795 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
796 | case executed 2158 times by 1 test: TLS_ST_CW_FINISHED:case TLS_ST_CW_FINISHED: Executed by:
executed 2158 times by 1 test: case TLS_ST_CW_FINISHED: Executed by:
| 2158 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
797 | if (statem_flush(s) != 1
| 104-2054 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
798 | return executed 104 times by 1 test: WORK_MORE_B;return WORK_MORE_B; Executed by:
executed 104 times by 1 test: return WORK_MORE_B; Executed by:
| 104 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
799 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
800 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-1872 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
801 | if (!tls13_save_handshake_digest_for_pha(s)
| 0-598 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
802 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
803 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
804 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
805 | if (s->post_handshake_auth != SSL_PHA_REQUESTED
| 25-573 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
806 | if (!s->method->ssl3_enc->change_cipher_state(s,
| 0-573 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
807 | 0x100 | (0x010|0x002))
| 0-573 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
808 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
809 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
810 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
811 | } executed 573 times by 1 test: end of block Executed by:
| 573 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
812 | } executed 598 times by 1 test: end of block Executed by:
| 598 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
813 | break; executed 2054 times by 1 test: break; Executed by:
| 2054 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
814 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
815 | case executed 4 times by 1 test: TLS_ST_CW_KEY_UPDATE:case TLS_ST_CW_KEY_UPDATE: Executed by:
executed 4 times by 1 test: case TLS_ST_CW_KEY_UPDATE: Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
816 | if (statem_flush(s) != 1
| 0-4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
817 | return never executed: WORK_MORE_A;return WORK_MORE_A; never executed: return WORK_MORE_A; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
818 | if (!tls13_update_key(s, 1)
| 0-4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
819 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
820 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
821 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
822 | break; executed 4 times by 1 test: break; Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
823 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
824 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
825 | return executed 11271 times by 1 test: WORK_FINISHED_CONTINUE;return WORK_FINISHED_CONTINUE; Executed by:
executed 11271 times by 1 test: return WORK_FINISHED_CONTINUE; Executed by:
| 11271 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
826 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
827 | int ossl_statem_client_construct_message(SSL *s, WPACKET *pkt, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
828 | confunc_f *confunc, int *mt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
829 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
830 | OSSL_STATEM *st = &s->statem; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
831 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
832 | switch (st->hand_state) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
833 | default never executed: :default: never executed: default: | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
834 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
835 | ossl_statem_fatal((s), (80), (430), (236), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
836 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
837 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
838 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
839 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
840 | 901 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
841 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
842 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
843 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
844 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
845 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
846 | case executed 2682 times by 1 test: TLS_ST_CW_CHANGE:case TLS_ST_CW_CHANGE: Executed by:
executed 2682 times by 1 test: case TLS_ST_CW_CHANGE: Executed by:
| 2682 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
847 | if ((
| 182-2500 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
848 | * executed 182 times by 1 test: confunc = dtls_construct_change_cipher_spec;*confunc = dtls_construct_change_cipher_spec; Executed by:
executed 182 times by 1 test: *confunc = dtls_construct_change_cipher_spec; Executed by:
| 182 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
849 | else | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
850 | * executed 2500 times by 1 test: confunc = tls_construct_change_cipher_spec;*confunc = tls_construct_change_cipher_spec; Executed by:
executed 2500 times by 1 test: *confunc = tls_construct_change_cipher_spec; Executed by:
| 2500 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
851 | *mt = 0x0101; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
852 | break; executed 2682 times by 1 test: break; Executed by:
| 2682 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
853 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
854 | case executed 4992 times by 1 test: TLS_ST_CW_CLNT_HELLO:case TLS_ST_CW_CLNT_HELLO: Executed by:
executed 4992 times by 1 test: case TLS_ST_CW_CLNT_HELLO: Executed by:
| 4992 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
855 | *confunc = tls_construct_client_hello; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
856 | *mt = 1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
857 | break; executed 4992 times by 1 test: break; Executed by:
| 4992 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
858 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
859 | case executed 18 times by 1 test: TLS_ST_CW_END_OF_EARLY_DATA:case TLS_ST_CW_END_OF_EARLY_DATA: Executed by:
executed 18 times by 1 test: case TLS_ST_CW_END_OF_EARLY_DATA: Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
860 | *confunc = tls_construct_end_of_early_data; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
861 | *mt = 5; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
862 | break; executed 18 times by 1 test: break; Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
863 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
864 | case executed 37 times by 1 test: TLS_ST_PENDING_EARLY_DATA_END:case TLS_ST_PENDING_EARLY_DATA_END: Executed by:
executed 37 times by 1 test: case TLS_ST_PENDING_EARLY_DATA_END: Executed by:
| 37 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
865 | *confunc = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
866 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
867 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
868 | *mt = -1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
869 | break; executed 37 times by 1 test: break; Executed by:
| 37 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
870 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
871 | case executed 83 times by 1 test: TLS_ST_CW_CERT:case TLS_ST_CW_CERT: Executed by:
executed 83 times by 1 test: case TLS_ST_CW_CERT: Executed by:
| 83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
872 | *confunc = tls_construct_client_certificate; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
873 | *mt = 11; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
874 | break; executed 83 times by 1 test: break; Executed by:
| 83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
875 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
876 | case executed 1426 times by 1 test: TLS_ST_CW_KEY_EXCH:case TLS_ST_CW_KEY_EXCH: Executed by:
executed 1426 times by 1 test: case TLS_ST_CW_KEY_EXCH: Executed by:
| 1426 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
877 | *confunc = tls_construct_client_key_exchange; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
878 | *mt = 16; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
879 | break; executed 1426 times by 1 test: break; Executed by:
| 1426 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
880 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
881 | case executed 43 times by 1 test: TLS_ST_CW_CERT_VRFY:case TLS_ST_CW_CERT_VRFY: Executed by:
executed 43 times by 1 test: case TLS_ST_CW_CERT_VRFY: Executed by:
| 43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
882 | *confunc = tls_construct_cert_verify; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
883 | *mt = 15; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
884 | break; executed 43 times by 1 test: break; Executed by:
| 43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
885 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
886 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
887 | case executed 21 times by 1 test: TLS_ST_CW_NEXT_PROTO:case TLS_ST_CW_NEXT_PROTO: Executed by:
executed 21 times by 1 test: case TLS_ST_CW_NEXT_PROTO: Executed by:
| 21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
888 | *confunc = tls_construct_next_proto; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
889 | *mt = 67; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
890 | break; executed 21 times by 1 test: break; Executed by:
| 21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
891 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
892 | case executed 2054 times by 1 test: TLS_ST_CW_FINISHED:case TLS_ST_CW_FINISHED: Executed by:
executed 2054 times by 1 test: case TLS_ST_CW_FINISHED: Executed by:
| 2054 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
893 | *confunc = tls_construct_finished; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
894 | *mt = 20; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
895 | break; executed 2054 times by 1 test: break; Executed by:
| 2054 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
896 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
897 | case executed 4 times by 1 test: TLS_ST_CW_KEY_UPDATE:case TLS_ST_CW_KEY_UPDATE: Executed by:
executed 4 times by 1 test: case TLS_ST_CW_KEY_UPDATE: Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
898 | *confunc = tls_construct_key_update; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
899 | *mt = 24; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
900 | break; executed 4 times by 1 test: break; Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
901 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
902 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
903 | return executed 11360 times by 1 test: 1;return 1; Executed by:
executed 11360 times by 1 test: return 1; Executed by:
| 11360 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
904 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
905 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
906 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
907 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
908 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
909 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
910 | size_t ossl_statem_client_max_message_size(SSL *s) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
911 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
912 | OSSL_STATEM *st = &s->statem; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
913 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
914 | switch (st->hand_state) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
915 | default executed 8 times by 1 test: :default: Executed by:
executed 8 times by 1 test: default: Executed by:
| 8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
916 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
917 | return executed 8 times by 1 test: 0;return 0; Executed by:
executed 8 times by 1 test: return 0; Executed by:
| 8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
918 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
919 | case executed 4632 times by 1 test: TLS_ST_CR_SRVR_HELLO:case TLS_ST_CR_SRVR_HELLO: Executed by:
executed 4632 times by 1 test: case TLS_ST_CR_SRVR_HELLO: Executed by:
| 4632 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
920 | return executed 4632 times by 1 test: 20000;return 20000; Executed by:
executed 4632 times by 1 test: return 20000; Executed by:
| 4632 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
921 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
922 | case executed 1 time by 1 test: DTLS_ST_CR_HELLO_VERIFY_REQUEST:case DTLS_ST_CR_HELLO_VERIFY_REQUEST: Executed by:
executed 1 time by 1 test: case DTLS_ST_CR_HELLO_VERIFY_REQUEST: Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
923 | return executed 1 time by 1 test: 258;return 258; Executed by:
executed 1 time by 1 test: return 258; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
924 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
925 | case executed 3024 times by 1 test: TLS_ST_CR_CERT:case TLS_ST_CR_CERT: Executed by:
executed 3024 times by 1 test: case TLS_ST_CR_CERT: Executed by:
| 3024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
926 | return executed 3024 times by 1 test: s->max_cert_list;return s->max_cert_list; Executed by:
executed 3024 times by 1 test: return s->max_cert_list; Executed by:
| 3024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
927 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
928 | case executed 474 times by 1 test: TLS_ST_CR_CERT_VRFY:case TLS_ST_CR_CERT_VRFY: Executed by:
executed 474 times by 1 test: case TLS_ST_CR_CERT_VRFY: Executed by:
| 474 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
929 | return executed 474 times by 1 test: 16384;return 16384; Executed by:
executed 474 times by 1 test: return 16384; Executed by:
| 474 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
930 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
931 | case executed 5 times by 1 test: TLS_ST_CR_CERT_STATUS:case TLS_ST_CR_CERT_STATUS: Executed by:
executed 5 times by 1 test: case TLS_ST_CR_CERT_STATUS: Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
932 | return executed 5 times by 1 test: 16384;return 16384; Executed by:
executed 5 times by 1 test: return 16384; Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
933 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
934 | case executed 1390 times by 1 test: TLS_ST_CR_KEY_EXCH:case TLS_ST_CR_KEY_EXCH: Executed by:
executed 1390 times by 1 test: case TLS_ST_CR_KEY_EXCH: Executed by:
| 1390 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
935 | return executed 1390 times by 1 test: 102400;return 102400; Executed by:
executed 1390 times by 1 test: return 102400; Executed by:
| 1390 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
936 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
937 | case executed 142 times by 1 test: TLS_ST_CR_CERT_REQ:case TLS_ST_CR_CERT_REQ: Executed by:
executed 142 times by 1 test: case TLS_ST_CR_CERT_REQ: Executed by:
| 142 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
938 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
939 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
940 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
941 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
942 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
943 | return executed 142 times by 1 test: s->max_cert_list;return s->max_cert_list; Executed by:
executed 142 times by 1 test: return s->max_cert_list; Executed by:
| 142 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
944 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
945 | case executed 1428 times by 1 test: TLS_ST_CR_SRVR_DONE:case TLS_ST_CR_SRVR_DONE: Executed by:
executed 1428 times by 1 test: case TLS_ST_CR_SRVR_DONE: Executed by:
| 1428 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
946 | return executed 1428 times by 1 test: 0;return 0; Executed by:
executed 1428 times by 1 test: return 0; Executed by:
| 1428 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
947 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
948 | case executed 1252 times by 1 test: TLS_ST_CR_CHANGE:case TLS_ST_CR_CHANGE: Executed by:
executed 1252 times by 1 test: case TLS_ST_CR_CHANGE: Executed by:
| 1252 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
949 | if (s->version == 0x0100
| 1-1251 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
950 | return executed 1 time by 1 test: 3;return 3; Executed by:
executed 1 time by 1 test: return 3; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
951 | return executed 1251 times by 1 test: 1;return 1; Executed by:
executed 1251 times by 1 test: return 1; Executed by:
| 1251 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
952 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
953 | case executed 1873 times by 1 test: TLS_ST_CR_SESSION_TICKET:case TLS_ST_CR_SESSION_TICKET: Executed by:
executed 1873 times by 1 test: case TLS_ST_CR_SESSION_TICKET: Executed by:
| 1873 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
954 | return executed 1873 times by 1 test: 16384;return 16384; Executed by:
executed 1873 times by 1 test: return 16384; Executed by:
| 1873 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
955 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
956 | case executed 1626 times by 1 test: TLS_ST_CR_FINISHED:case TLS_ST_CR_FINISHED: Executed by:
executed 1626 times by 1 test: case TLS_ST_CR_FINISHED: Executed by:
| 1626 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
957 | return executed 1626 times by 1 test: 64;return 64; Executed by:
executed 1626 times by 1 test: return 64; Executed by:
| 1626 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
958 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
959 | case executed 586 times by 1 test: TLS_ST_CR_ENCRYPTED_EXTENSIONS:case TLS_ST_CR_ENCRYPTED_EXTENSIONS: Executed by:
executed 586 times by 1 test: case TLS_ST_CR_ENCRYPTED_EXTENSIONS: Executed by:
| 586 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
960 | return executed 586 times by 1 test: 20000;return 20000; Executed by:
executed 586 times by 1 test: return 20000; Executed by:
| 586 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
961 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
962 | case executed 5 times by 1 test: TLS_ST_CR_KEY_UPDATE:case TLS_ST_CR_KEY_UPDATE: Executed by:
executed 5 times by 1 test: case TLS_ST_CR_KEY_UPDATE: Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
963 | return executed 5 times by 1 test: 1;return 1; Executed by:
executed 5 times by 1 test: return 1; Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
964 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
965 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
966 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
967 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
968 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
969 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
970 | MSG_PROCESS_RETURN ossl_statem_client_process_message(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
971 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
972 | OSSL_STATEM *st = &s->statem; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
973 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
974 | switch (st->hand_state) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
975 | default never executed: :default: never executed: default: | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
976 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
977 | ossl_statem_fatal((s), (80), (594), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
978 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
979 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
980 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
981 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
982 | 1035 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
983 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
984 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
985 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
986 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
987 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
988 | case executed 4600 times by 1 test: TLS_ST_CR_SRVR_HELLO:case TLS_ST_CR_SRVR_HELLO: Executed by:
executed 4600 times by 1 test: case TLS_ST_CR_SRVR_HELLO: Executed by:
| 4600 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
989 | return executed 4600 times by 1 test: tls_process_server_hello(s, pkt);return tls_process_server_hello(s, pkt); Executed by:
executed 4600 times by 1 test: return tls_process_server_hello(s, pkt); Executed by:
| 4600 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
990 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
991 | case executed 1 time by 1 test: DTLS_ST_CR_HELLO_VERIFY_REQUEST:case DTLS_ST_CR_HELLO_VERIFY_REQUEST: Executed by:
executed 1 time by 1 test: case DTLS_ST_CR_HELLO_VERIFY_REQUEST: Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
992 | return executed 1 time by 1 test: dtls_process_hello_verify(s, pkt);return dtls_process_hello_verify(s, pkt); Executed by:
executed 1 time by 1 test: return dtls_process_hello_verify(s, pkt); Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
993 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
994 | case executed 3020 times by 1 test: TLS_ST_CR_CERT:case TLS_ST_CR_CERT: Executed by:
executed 3020 times by 1 test: case TLS_ST_CR_CERT: Executed by:
| 3020 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
995 | return executed 3020 times by 1 test: tls_process_server_certificate(s, pkt);return tls_process_server_certificate(s, pkt); Executed by:
executed 3020 times by 1 test: return tls_process_server_certificate(s, pkt); Executed by:
| 3020 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
996 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
997 | case executed 474 times by 1 test: TLS_ST_CR_CERT_VRFY:case TLS_ST_CR_CERT_VRFY: Executed by:
executed 474 times by 1 test: case TLS_ST_CR_CERT_VRFY: Executed by:
| 474 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
998 | return executed 474 times by 1 test: tls_process_cert_verify(s, pkt);return tls_process_cert_verify(s, pkt); Executed by:
executed 474 times by 1 test: return tls_process_cert_verify(s, pkt); Executed by:
| 474 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
999 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1000 | case executed 5 times by 1 test: TLS_ST_CR_CERT_STATUS:case TLS_ST_CR_CERT_STATUS: Executed by:
executed 5 times by 1 test: case TLS_ST_CR_CERT_STATUS: Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1001 | return executed 5 times by 1 test: tls_process_cert_status(s, pkt);return tls_process_cert_status(s, pkt); Executed by:
executed 5 times by 1 test: return tls_process_cert_status(s, pkt); Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1002 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1003 | case executed 1390 times by 1 test: TLS_ST_CR_KEY_EXCH:case TLS_ST_CR_KEY_EXCH: Executed by:
executed 1390 times by 1 test: case TLS_ST_CR_KEY_EXCH: Executed by:
| 1390 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1004 | return executed 1390 times by 1 test: tls_process_key_exchange(s, pkt);return tls_process_key_exchange(s, pkt); Executed by:
executed 1390 times by 1 test: return tls_process_key_exchange(s, pkt); Executed by:
| 1390 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1005 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1006 | case executed 142 times by 1 test: TLS_ST_CR_CERT_REQ:case TLS_ST_CR_CERT_REQ: Executed by:
executed 142 times by 1 test: case TLS_ST_CR_CERT_REQ: Executed by:
| 142 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1007 | return executed 142 times by 1 test: tls_process_certificate_request(s, pkt);return tls_process_certificate_request(s, pkt); Executed by:
executed 142 times by 1 test: return tls_process_certificate_request(s, pkt); Executed by:
| 142 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1008 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1009 | case executed 1428 times by 1 test: TLS_ST_CR_SRVR_DONE:case TLS_ST_CR_SRVR_DONE: Executed by:
executed 1428 times by 1 test: case TLS_ST_CR_SRVR_DONE: Executed by:
| 1428 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1010 | return executed 1428 times by 1 test: tls_process_server_done(s, pkt);return tls_process_server_done(s, pkt); Executed by:
executed 1428 times by 1 test: return tls_process_server_done(s, pkt); Executed by:
| 1428 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1011 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1012 | case executed 1252 times by 1 test: TLS_ST_CR_CHANGE:case TLS_ST_CR_CHANGE: Executed by:
executed 1252 times by 1 test: case TLS_ST_CR_CHANGE: Executed by:
| 1252 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1013 | return executed 1252 times by 1 test: tls_process_change_cipher_spec(s, pkt);return tls_process_change_cipher_spec(s, pkt); Executed by:
executed 1252 times by 1 test: return tls_process_change_cipher_spec(s, pkt); Executed by:
| 1252 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1014 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1015 | case executed 1873 times by 1 test: TLS_ST_CR_SESSION_TICKET:case TLS_ST_CR_SESSION_TICKET: Executed by:
executed 1873 times by 1 test: case TLS_ST_CR_SESSION_TICKET: Executed by:
| 1873 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1016 | return executed 1873 times by 1 test: tls_process_new_session_ticket(s, pkt);return tls_process_new_session_ticket(s, pkt); Executed by:
executed 1873 times by 1 test: return tls_process_new_session_ticket(s, pkt); Executed by:
| 1873 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1017 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1018 | case executed 1626 times by 1 test: TLS_ST_CR_FINISHED:case TLS_ST_CR_FINISHED: Executed by:
executed 1626 times by 1 test: case TLS_ST_CR_FINISHED: Executed by:
| 1626 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1019 | return executed 1626 times by 1 test: tls_process_finished(s, pkt);return tls_process_finished(s, pkt); Executed by:
executed 1626 times by 1 test: return tls_process_finished(s, pkt); Executed by:
| 1626 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1020 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1021 | case executed 8 times by 1 test: TLS_ST_CR_HELLO_REQ:case TLS_ST_CR_HELLO_REQ: Executed by:
executed 8 times by 1 test: case TLS_ST_CR_HELLO_REQ: Executed by:
| 8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1022 | return executed 8 times by 1 test: tls_process_hello_req(s, pkt);return tls_process_hello_req(s, pkt); Executed by:
executed 8 times by 1 test: return tls_process_hello_req(s, pkt); Executed by:
| 8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1023 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1024 | case executed 586 times by 1 test: TLS_ST_CR_ENCRYPTED_EXTENSIONS:case TLS_ST_CR_ENCRYPTED_EXTENSIONS: Executed by:
executed 586 times by 1 test: case TLS_ST_CR_ENCRYPTED_EXTENSIONS: Executed by:
| 586 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1025 | return executed 586 times by 1 test: tls_process_encrypted_extensions(s, pkt);return tls_process_encrypted_extensions(s, pkt); Executed by:
executed 586 times by 1 test: return tls_process_encrypted_extensions(s, pkt); Executed by:
| 586 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1026 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1027 | case executed 5 times by 1 test: TLS_ST_CR_KEY_UPDATE:case TLS_ST_CR_KEY_UPDATE: Executed by:
executed 5 times by 1 test: case TLS_ST_CR_KEY_UPDATE: Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1028 | return executed 5 times by 1 test: tls_process_key_update(s, pkt);return tls_process_key_update(s, pkt); Executed by:
executed 5 times by 1 test: return tls_process_key_update(s, pkt); Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1029 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1030 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1031 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1032 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1033 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1034 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1035 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1036 | WORK_STATE ossl_statem_client_post_process_message(SSL *s, WORK_STATE wst) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1037 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1038 | OSSL_STATEM *st = &s->statem; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1039 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1040 | switch (st->hand_state) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1041 | default never executed: :default: never executed: default: | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1042 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1043 | ossl_statem_fatal((s), (80), (593), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1044 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1045 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1046 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1047 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1048 | 1095 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1049 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1050 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1051 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1052 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1053 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1054 | case executed 83 times by 1 test: TLS_ST_CR_CERT_REQ:case TLS_ST_CR_CERT_REQ: Executed by:
executed 83 times by 1 test: case TLS_ST_CR_CERT_REQ: Executed by:
| 83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1055 | return executed 83 times by 1 test: tls_prepare_client_certificate(s, wst);return tls_prepare_client_certificate(s, wst); Executed by:
executed 83 times by 1 test: return tls_prepare_client_certificate(s, wst); Executed by:
| 83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1056 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1057 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1058 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1059 | int tls_construct_client_hello(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1060 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1061 | unsigned char *p; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1062 | size_t sess_id_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1063 | int i, protverr; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1064 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1065 | SSL_COMP *comp; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1066 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1067 | SSL_SESSION *sess = s->session; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1068 | unsigned char *session_id; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1069 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1070 | if (!WPACKET_set_max_size(pkt, 16384)
| 0-4992 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1071 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1072 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1073 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1074 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1075 | 1117 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1076 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1077 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1078 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1079 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1080 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1081 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1082 | protverr = ssl_set_client_hello_version(s); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1083 | if (protverr != 0
| 52-4940 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1084 | ossl_statem_fatal((s), (80), (487), (protverr), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1085 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1086 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1087 | 1125 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1088 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1089 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1090 | return executed 52 times by 1 test: 0;return 0; Executed by:
executed 52 times by 1 test: return 0; Executed by:
| 52 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1091 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1092 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1093 | if (sess ==
| 952-3988 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1094 | ((void *)0)
| 952-3988 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1095 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1096 | || !ssl_version_supported(s, sess->ssl_version,
| 14-938 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1097 | ((void *)0)
| 14-938 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1098 | )
| 14-938 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1099 | || !SSL_SESSION_is_resumable(sess)
| 273-665 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1100 | if (s->hello_retry_request == SSL_HRR_NONE
| 665-4002 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1101 | && !ssl_get_new_session(s, 0)
| 0-4002 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1102 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1103 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1104 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1105 | } executed 4667 times by 1 test: end of block Executed by:
| 4667 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1106 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1107 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1108 | p = s->s3->client_random; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1109 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1110 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1111 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1112 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1113 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1114 | if ((
| 192-4748 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1115 | size_t idx; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1116 | i = 1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1117 | for (idx = 0; idx < sizeof(s->s3->client_random)
| 191-6113 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1118 | if (p[idx]
| 1-6112 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1119 | i = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1120 | break; executed 1 time by 1 test: break; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1121 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1122 | } executed 6112 times by 1 test: end of block Executed by:
| 6112 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1123 | } executed 192 times by 1 test: else {end of block Executed by:
| 192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1124 | i = (s->hello_retry_request == SSL_HRR_NONE); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1125 | } executed 4748 times by 1 test: end of block Executed by:
| 4748 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1126 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1127 | if (i
| 0-4261 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1128 | DOWNGRADE_NONE) <= 0
| 0-4261 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1129 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1130 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1131 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1132 | 1162 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1133 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1134 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1135 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1136 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1137 | if (!WPACKET_put_bytes__((pkt), (s->client_version), 2)
| 0-4940 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1138 | || !WPACKET_memcpy(pkt, s->s3->client_random, 32)
| 0-4940 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1139 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1140 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1141 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1142 | 1202 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1143 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1144 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1145 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1146 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1147 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1148 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1149 | session_id = s->session->session_id; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1150 | if (s->new_session
| 15-4925 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1151 | if (s->version == 0x0304
| 15-3889 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1152 | && (
| 15-3874 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1153 | sess_id_len = sizeof(s->tmp_session_id); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1154 | s->tmp_session_id_len = sess_id_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1155 | session_id = s->tmp_session_id; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1156 | if (s->hello_retry_request == SSL_HRR_NONE
| 675-3199 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1157 | && RAND_bytes(s->tmp_session_id, sess_id_len) <= 0
| 0-3199 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1158 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1159 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1160 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1161 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1162 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1163 | 1218 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1164 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1165 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1166 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1167 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1168 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1169 | } executed 3874 times by 1 test: else {end of block Executed by:
| 3874 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1170 | sess_id_len = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1171 | } executed 30 times by 1 test: end of block Executed by:
| 30 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1172 | } else { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1173 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1174 | ((void) (0)) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1175 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1176 | sess_id_len = s->session->session_id_length; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1177 | if (s->version == 0x0304
| 30-1006 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1178 | s->tmp_session_id_len = sess_id_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1179 | memcpy(s->tmp_session_id, s->session->session_id, sess_id_len); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1180 | } executed 30 times by 1 test: end of block Executed by:
| 30 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1181 | } executed 1036 times by 1 test: end of block Executed by:
| 1036 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1182 | if (!WPACKET_start_sub_packet_len__((pkt), 1)
| 0-4940 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1183 | || (sess_id_len != 0
| 0-3989 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1184 | sess_id_len)
| 0-3989 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1185 | || !WPACKET_close(pkt)
| 0-4940 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1186 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1187 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1188 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1189 | 1237 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1190 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1191 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1192 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1193 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1194 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1195 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1196 | if ((
| 192-4748 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1197 | if (s->d1->cookie_len > sizeof(s->d1->cookie)
| 0-192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1198 | || !WPACKET_sub_memcpy__((pkt), (s->d1->cookie), (s->d1->cookie_len), 1)
| 0-192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1199 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1200 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1201 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1202 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1203 | 1247 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1204 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1205 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1206 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1207 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1208 | } executed 192 times by 1 test: end of block Executed by:
| 192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1209 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1210 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1211 | if (!WPACKET_start_sub_packet_len__((pkt), 2)
| 0-4940 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1212 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1213 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1214 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1215 | 1255 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1216 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1217 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1218 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1219 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1220 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1221 | if (!ssl_cipher_list_to_bytes(s, SSL_get_ciphers(s), pkt)
| 1-4939 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1222 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1223 | return executed 1 time by 1 test: 0;return 0; Executed by:
executed 1 time by 1 test: return 0; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1224 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1225 | if (!WPACKET_close(pkt)
| 0-4939 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1226 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1227 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1228 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1229 | 1265 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1230 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1231 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1232 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1233 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1234 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1235 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1236 | if (!WPACKET_start_sub_packet_len__((pkt), 1)
| 0-4939 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1237 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1238 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1239 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1240 | 1272 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1241 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1242 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1243 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1244 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1245 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1246 | if (ssl_allow_compression(s)
| 0-4939 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1247 | && s->ctx->comp_methods
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1248 | && ((
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1249 | int compnum = sk_SSL_COMP_num(s->ctx->comp_methods); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1250 | for (i = 0; i < compnum
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1251 | comp = sk_SSL_COMP_value(s->ctx->comp_methods, i); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1252 | if (!WPACKET_put_bytes__((pkt), (comp->id), 1)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1253 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1254 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1255 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1256 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1257 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1258 | 1285 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1259 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1260 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1261 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1262 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1263 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1264 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1265 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1266 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1267 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1268 | if (!WPACKET_put_bytes__((pkt), (0), 1)
| 0-4939 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1269 | ossl_statem_fatal((s), (80), (487), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1270 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1271 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1272 | 1294 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1273 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1274 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1275 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1276 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1277 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1278 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1279 | if (!tls_construct_extensions(s, pkt, 0x0080,
| 3-4936 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1280 | ((void *)0)
| 3-4936 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1281 | , 0)
| 3-4936 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1282 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1283 | return executed 3 times by 1 test: 0;return 0; Executed by:
executed 3 times by 1 test: return 0; Executed by:
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1284 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1285 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1286 | return executed 4936 times by 1 test: 1;return 1; Executed by:
executed 4936 times by 1 test: return 1; Executed by:
| 4936 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1287 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1288 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1289 | MSG_PROCESS_RETURN dtls_process_hello_verify(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1290 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1291 | size_t cookie_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1292 | PACKET cookiepkt; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1293 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1294 | if (!PACKET_forward(pkt, 2)
| 0-1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1295 | || !PACKET_get_length_prefixed_1(pkt, &cookiepkt)
| 0-1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1296 | ossl_statem_fatal((s), (50), (386), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1297 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1298 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1299 | 1315 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1300 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1301 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1302 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1303 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1304 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1305 | cookie_len = PACKET_remaining(&cookiepkt); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1306 | if (cookie_len > sizeof(s->d1->cookie)
| 0-1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1307 | ossl_statem_fatal((s), (47), (386), (404), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1308 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1309 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1310 | 1322 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1311 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1312 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1313 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1314 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1315 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1316 | if (!PACKET_copy_bytes(&cookiepkt, s->d1->cookie, cookie_len)
| 0-1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1317 | ossl_statem_fatal((s), (50), (386), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1318 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1319 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1320 | 1328 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1321 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1322 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1323 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1324 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1325 | s->d1->cookie_len = cookie_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1326 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1327 | return executed 1 time by 1 test: MSG_PROCESS_FINISHED_READING;return MSG_PROCESS_FINISHED_READING; Executed by:
executed 1 time by 1 test: return MSG_PROCESS_FINISHED_READING; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1328 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1329 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1330 | static int set_client_ciphersuite(SSL *s, const unsigned char *cipherchars) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1331 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1332 | struct stack_st_SSL_CIPHER *sk; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1333 | const SSL_CIPHER *c; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1334 | int i; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1335 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1336 | c = ssl_get_cipher_by_char(s, cipherchars, 0); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1337 | if (c ==
| 83-4123 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1338 | ((void *)0)
| 83-4123 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1339 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1340 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1341 | ossl_statem_fatal((s), (47), (540), (248), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1342 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1343 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1344 | 1346 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1345 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1346 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1347 | return executed 83 times by 1 test: 0;return 0; Executed by:
executed 83 times by 1 test: return 0; Executed by:
| 83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1348 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1349 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1350 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1351 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1352 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1353 | if (ssl_cipher_disabled(s, c, (3 | (1 << 16)), 1)
| 2-4121 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1354 | ossl_statem_fatal((s), (47), (540), (261), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1355 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1356 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1357 | 1355 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1358 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1359 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1360 | return executed 2 times by 1 test: 0;return 0; Executed by:
executed 2 times by 1 test: return 0; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1361 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1362 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1363 | sk = ssl_get_ciphers_by_id(s); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1364 | i = sk_SSL_CIPHER_find(sk, c); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1365 | if (i < 0
| 1-4120 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1366 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1367 | ossl_statem_fatal((s), (47), (540), (261), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1368 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1369 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1370 | 1364 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1371 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1372 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1373 | return executed 1 time by 1 test: 0;return 0; Executed by:
executed 1 time by 1 test: return 0; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1374 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1375 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1376 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 29-3937 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1377 | ((void *)0)
| 29-603 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1378 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1379 | && s->s3->tmp.new_cipher->id != c->id
| 2-27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1380 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1381 | ossl_statem_fatal((s), (47), (540), (261), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1382 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1383 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1384 | 1372 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1385 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1386 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1387 | return executed 2 times by 1 test: 0;return 0; Executed by:
executed 2 times by 1 test: return 0; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1388 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1389 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1390 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1391 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1392 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1393 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1394 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1395 | if (s->session->cipher !=
| 185-3933 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1396 | ((void *)0)
| 185-3933 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1397 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1398 | s->session->cipher_id = s->session->cipher->id; executed 185 times by 1 test: s->session->cipher_id = s->session->cipher->id; Executed by:
| 185 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1399 | if (s->hit
| 4-3946 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1400 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1401 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1402 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1403 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1404 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1405 | if (ssl_md(c->algorithm2)
| 1-3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1406 | != ssl_md(s->session->cipher->algorithm2)
| 1-3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1407 | ossl_statem_fatal((s), (47), (540), (218), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1408 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1409 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1410 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1411 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1412 | 1393 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1413 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1414 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1415 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1416 | return executed 1 time by 1 test: 0;return 0; Executed by:
executed 1 time by 1 test: return 0; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1417 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1418 | } executed 3 times by 1 test: else {end of block Executed by:
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1419 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1420 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1421 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1422 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1423 | ossl_statem_fatal((s), (47), (540), (197), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1424 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1425 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1426 | 1402 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1427 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1428 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1429 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1430 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1431 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1432 | s->s3->tmp.new_cipher = c; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1433 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1434 | return executed 4117 times by 1 test: 1;return 1; Executed by:
executed 4117 times by 1 test: return 1; Executed by:
| 4117 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1435 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1436 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1437 | MSG_PROCESS_RETURN tls_process_server_hello(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1438 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1439 | PACKET session_id, extpkt; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1440 | size_t session_id_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1441 | const unsigned char *cipherchars; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1442 | int hrr = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1443 | unsigned int compression; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1444 | unsigned int sversion; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1445 | unsigned int context; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1446 | RAW_EXTENSION *extensions = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1447 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1448 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1449 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1450 | SSL_COMP *comp; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1451 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1452 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1453 | if (!PACKET_get_net_2(pkt, &sversion)
| 4-4596 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1454 | ossl_statem_fatal((s), (50), (369), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1455 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1456 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1457 | 1427 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1458 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1459 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1460 | goto executed 4 times by 1 test: err;goto err; Executed by:
executed 4 times by 1 test: goto err; Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1461 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1462 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1463 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1464 | if (s->version == 0x0304
| 910-3686 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1465 | && sversion == 0x0303
| 732-2954 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1466 | && PACKET_remaining(pkt) >= 32
| 1-2953 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1467 | && memcmp(hrrrandom, PACKET_data(pkt), 32) == 0
| 732-2221 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1468 | s->hello_retry_request = SSL_HRR_PENDING; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1469 | hrr = 1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1470 | if (!PACKET_forward(pkt, 32)
| 0-732 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1471 | ossl_statem_fatal((s), (50), (369), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1472 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1473 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1474 | 1440 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1475 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1476 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1477 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1478 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1479 | } executed 732 times by 1 test: else {end of block Executed by:
| 732 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1480 | if (!PACKET_copy_bytes(pkt, s->s3->server_random, 32)
| 2-3862 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1481 | ossl_statem_fatal((s), (50), (369), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1482 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1483 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1484 | 1446 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1485 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1486 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1487 | goto executed 2 times by 1 test: err;goto err; Executed by:
executed 2 times by 1 test: goto err; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1488 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1489 | } executed 3862 times by 1 test: end of block Executed by:
| 3862 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1490 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1491 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1492 | if (!PACKET_get_length_prefixed_1(pkt, &session_id)
| 6-4588 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1493 | ossl_statem_fatal((s), (50), (369), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1494 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1495 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1496 | 1454 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1497 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1498 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1499 | goto executed 6 times by 1 test: err;goto err; Executed by:
executed 6 times by 1 test: goto err; Executed by:
| 6 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1500 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1501 | session_id_len = PACKET_remaining(&session_id); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1502 | if (session_id_len > sizeof(s->session->session_id)
| 1-4587 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1503 | || session_id_len > 32
| 0-4587 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1504 | ossl_statem_fatal((s), (47), (369), (300), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1505 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1506 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1507 | 1461 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1508 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1509 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1510 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1511 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1512 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1513 | if (!PACKET_get_bytes(pkt, &cipherchars, 2)
| 1-4586 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1514 | ossl_statem_fatal((s), (50), (369), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1515 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1516 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1517 | 1467 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1518 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1519 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1520 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1521 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1522 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1523 | if (!PACKET_get_1(pkt, &compression)
| 1-4585 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1524 | ossl_statem_fatal((s), (50), (369), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1525 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1526 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1527 | 1473 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1528 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1529 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1530 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1531 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1532 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1533 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1534 | if (PACKET_remaining(pkt) == 0
| 1-4509 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1535 | PACKET_null_init(&extpkt); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1536 | } executed 75 times by 1 test: else if (!PACKET_as_length_prefixed_2(pkt, &extpkt)end of block Executed by:
| 18-4492 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1537 | || PACKET_remaining(pkt) != 0
| 0-4492 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1538 | ossl_statem_fatal((s), (50), (369), (271), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1539 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1540 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1541 | 1483 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1542 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1543 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1544 | goto executed 18 times by 1 test: err;goto err; Executed by:
executed 18 times by 1 test: goto err; Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1545 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1546 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1547 | if (!hrr
| 720-3847 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1548 | if (!tls_collect_extensions(s, &extpkt,
| 31-3816 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1549 | 0x0100
| 31-3816 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1550 | | 0x0200,
| 31-3816 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1551 | &extensions,
| 31-3816 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1552 | ((void *)0)
| 31-3816 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1553 | , 1)
| 31-3816 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1554 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1555 | goto executed 31 times by 1 test: err;goto err; Executed by:
executed 31 times by 1 test: goto err; Executed by:
| 31 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1556 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1557 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1558 | if (!ssl_choose_client_version(s, sversion, extensions)
| 321-3495 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1559 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1560 | goto executed 321 times by 1 test: err;goto err; Executed by:
executed 321 times by 1 test: goto err; Executed by:
| 321 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1561 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1562 | } executed 3495 times by 1 test: end of block Executed by:
| 3495 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1563 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1564 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 183-4032 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1565 | if (compression != 0
| 1-1358 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1566 | ossl_statem_fatal((s), (47), (369), (341), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1567 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1568 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1569 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1570 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1571 | 1506 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1572 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1573 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1574 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1575 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1576 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1577 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1578 | if (session_id_len != s->tmp_session_id_len
| 1-1357 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1579 | || memcmp(PACKET_data(&session_id), s->tmp_session_id,
| 3-1354 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1580 | session_id_len) != 0
| 3-1354 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1581 | ossl_statem_fatal((s), (47), (369), (999), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1582 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1583 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1584 | 1514 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1585 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1586 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1587 | goto executed 4 times by 1 test: err;goto err; Executed by:
executed 4 times by 1 test: goto err; Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1588 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1589 | } executed 1354 times by 1 test: end of block Executed by:
| 1354 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1590 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1591 | if (hrr
| 718-3492 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1592 | if (!set_client_ciphersuite(s, cipherchars)
| 28-690 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1593 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1594 | goto executed 28 times by 1 test: err;goto err; Executed by:
executed 28 times by 1 test: goto err; Executed by:
| 28 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1595 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1596 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1597 | return executed 690 times by 1 test: tls_process_as_hello_retry_request(s, &extpkt);return tls_process_as_hello_retry_request(s, &extpkt); Executed by:
executed 690 times by 1 test: return tls_process_as_hello_retry_request(s, &extpkt); Executed by:
| 690 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1598 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1599 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1600 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1601 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1602 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1603 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1604 | context = (!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-3309 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1605 | : 0x0100; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1606 | if (!tls_validate_all_contexts(s, context, extensions)
| 3-3489 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1607 | ossl_statem_fatal((s), (47), (369), (110), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1608 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1609 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1610 | 1536 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1611 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1612 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1613 | goto executed 3 times by 1 test: err;goto err; Executed by:
executed 3 times by 1 test: goto err; Executed by:
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1614 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1615 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1616 | s->hit = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1617 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1618 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-3306 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1619 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1620 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1621 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1622 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1623 | if (RECORD_LAYER_processed_read_pending(&s->rlayer)
| 1-632 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1624 | ossl_statem_fatal((s), (10), (369), (182), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1625 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1626 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1627 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1628 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1629 | 1550 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1630 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1631 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1632 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1633 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1634 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1635 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1636 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1637 | if (!tls_parse_extension(s, TLSEXT_IDX_psk,
| 0-632 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1638 | 0x0200,
| 0-632 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1639 | extensions,
| 0-632 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1640 | ((void *)0)
| 0-632 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1641 | , 0)
| 0-632 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1642 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1643 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1644 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1645 | } executed 632 times by 1 test: else {end of block Executed by:
| 632 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1646 | if (s->version >= 0x0301
| 1-2855 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1647 | && s->ext.session_secret_cb !=
| 0-2855 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1648 | ((void *)0)
| 0-2855 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1649 | && s->session->ext.tick
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1650 | const SSL_CIPHER *pref_cipher = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1651 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1652 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1653 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1654 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1655 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1656 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1657 | int master_key_length; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1658 | master_key_length = sizeof(s->session->master_key); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1659 | if (s->ext.session_secret_cb(s, s->session->master_key,
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1660 | &master_key_length,
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1661 |
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1662 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1663 | , &pref_cipher,
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1664 | s->ext.session_secret_cb_arg)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1665 | && master_key_length > 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1666 | s->session->master_key_length = master_key_length; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1667 | s->session->cipher = pref_cipher
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1668 | pref_cipher : ssl_get_cipher_by_char(s, cipherchars, 0); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1669 | } never executed: else {end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1670 | ossl_statem_fatal((s), (80), (369), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1671 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1672 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1673 | 1593 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1674 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1675 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1676 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1677 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1678 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1679 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1680 | if (session_id_len != 0
| 1016-1840 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1681 | && session_id_len == s->session->session_id_length
| 93-923 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1682 | && memcmp(PACKET_data(&session_id), s->session->session_id,
| 28-65 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1683 | session_id_len) == 0
| 28-65 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1684 | s->hit = 1; executed 65 times by 1 test: s->hit = 1; Executed by:
| 65 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1685 | } executed 2856 times by 1 test: end of block Executed by:
| 2856 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1686 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1687 | if (s->hit
| 172-3316 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1688 | if (s->sid_ctx_length != s->session->sid_ctx_length
| 0-172 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1689 | || memcmp(s->session->sid_ctx, s->sid_ctx, s->sid_ctx_length)
| 0-172 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1690 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1691 | ossl_statem_fatal((s), (47), (369), (272), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1692 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1693 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1694 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1695 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1696 | 1611 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1697 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1698 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1699 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1700 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1701 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1702 | } executed 172 times by 1 test: else {end of block Executed by:
| 172 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1703 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1704 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1705 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1706 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1707 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1708 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1709 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1710 | if (s->session->session_id_length > 0
| 84-3232 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1711 | || ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-3080 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1712 | && s->session->ext.tick_identity
| 0-493 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1713 | != -1
| 0-493 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1714 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1715 | __atomic_fetch_add (( | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1716 | (&s->session_ctx->stats.sess_miss) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1717 | ), ( | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1718 | 1 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1719 | ), ( | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1720 | memory_order_relaxed | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1721 | )) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1722 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1723 | if (!ssl_get_new_session(s, 0)
| 0-84 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1724 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1725 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1726 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1727 | } executed 84 times by 1 test: end of block Executed by:
| 84 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1728 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1729 | s->session->ssl_version = s->version; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1730 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1731 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1732 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1733 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1734 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1735 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1736 | if (!(!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-3150 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1737 | s->session->session_id_length = session_id_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1738 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1739 | if (session_id_len > 0
| 951-1840 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1740 | memcpy(s->session->session_id, PACKET_data(&session_id), executed 951 times by 1 test: memcpy(s->session->session_id, PACKET_data(&session_id), session_id_len); Executed by:
| 951 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1741 | session_id_len); executed 951 times by 1 test: memcpy(s->session->session_id, PACKET_data(&session_id), session_id_len); Executed by:
| 951 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1742 | } executed 2791 times by 1 test: end of block Executed by:
| 2791 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1743 | } executed 3316 times by 1 test: end of block Executed by:
| 3316 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1744 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1745 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1746 | if (s->version != s->session->ssl_version
| 0-3488 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1747 | ossl_statem_fatal((s), (70), (369), (210), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1748 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1749 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1750 | 1652 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1751 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1752 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1753 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1754 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1755 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1756 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1757 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1758 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1759 | s->s3->tmp.min_ver = s->version; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1760 | s->s3->tmp.max_ver = s->version; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1761 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1762 | if (!set_client_ciphersuite(s, cipherchars)
| 61-3427 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1763 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1764 | goto executed 61 times by 1 test: err;goto err; Executed by:
executed 61 times by 1 test: goto err; Executed by:
| 61 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1765 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1766 | if (s->hit
| 0-3256 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1767 | ossl_statem_fatal((s), (47), (369), (344), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1768 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1769 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1770 | 1685 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1771 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1772 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1773 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1774 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1775 | if (compression == 0
| 0-3427 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1776 | comp = executed 3427 times by 1 test: comp = ((void *)0) ; Executed by:
| 3427 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1777 | ((void *)0) executed 3427 times by 1 test: comp = ((void *)0) ; Executed by:
| 3427 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1778 | ; executed 3427 times by 1 test: comp = ((void *)0) ; Executed by:
| 3427 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1779 | else if (!ssl_allow_compression(s)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1780 | ossl_statem_fatal((s), (47), (369), (343), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1781 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1782 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1783 | 1692 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1784 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1785 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1786 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1787 | } else { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1788 | comp = ssl3_comp_find(s->ctx->comp_methods, compression); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1789 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1790 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1791 | if (compression != 0
| 0-3427 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1792 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1793 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1794 | ossl_statem_fatal((s), (47), (369), (257), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1795 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1796 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1797 | 1700 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1798 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1799 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1800 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1801 | } else { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1802 | s->s3->tmp.new_compression = comp; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1803 | } executed 3427 times by 1 test: end of block Executed by:
| 3427 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1804 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1805 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1806 | if (!tls_parse_all_extensions(s, context, extensions,
| 25-3402 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1807 | ((void *)0)
| 25-3402 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1808 | , 0, 1)
| 25-3402 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1809 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1810 | goto executed 25 times by 1 test: err;goto err; Executed by:
executed 25 times by 1 test: goto err; Executed by:
| 25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1811 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1812 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-3219 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1813 | && (!s->method->ssl3_enc->setup_key_block(s)
| 0-617 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1814 | || !s->method->ssl3_enc->change_cipher_state(s,
| 0-617 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1815 | 0x080 | (0x010|0x001))
| 0-617 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1816 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1817 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1818 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1819 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1820 | CRYPTO_free(extensions, __FILE__, 1751); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1821 | return executed 3402 times by 1 test: MSG_PROCESS_CONTINUE_READING;return MSG_PROCESS_CONTINUE_READING; Executed by:
executed 3402 times by 1 test: return MSG_PROCESS_CONTINUE_READING; Executed by:
| 3402 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1822 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1823 | CRYPTO_free(extensions, __FILE__, 1754); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1824 | return executed 508 times by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 508 times by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 508 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1825 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1826 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1827 | static MSG_PROCESS_RETURN tls_process_as_hello_retry_request(SSL *s, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1828 | PACKET *extpkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1829 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1830 | RAW_EXTENSION *extensions = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1831 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1832 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1833 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1834 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1835 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1836 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1837 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1838 | EVP_CIPHER_CTX_free(s->enc_write_ctx); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1839 | s->enc_write_ctx = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1840 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1841 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1842 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1843 | if (!tls_collect_extensions(s, extpkt, 0x0800,
| 1-689 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1844 | &extensions,
| 1-689 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1845 | ((void *)0)
| 1-689 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1846 | , 1)
| 1-689 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1847 | || !tls_parse_all_extensions(s, 0x0800,
| 9-680 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1848 | extensions,
| 9-680 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1849 | ((void *)0)
| 9-680 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1850 | , 0, 1)
| 9-680 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1851 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1852 | goto executed 10 times by 1 test: err;goto err; Executed by:
executed 10 times by 1 test: goto err; Executed by:
| 10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1853 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1854 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1855 | CRYPTO_free(extensions, __FILE__, 1778); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1856 | extensions = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1857 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1858 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1859 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1860 | if (s->ext.tls13_cookie_len == 0
| 140-540 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1861 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1862 | && s->s3->tmp.pkey !=
| 2-538 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1863 | ((void *)0)
| 2-538 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1864 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1865 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1866 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1867 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1868 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1869 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1870 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1871 | ossl_statem_fatal((s), (47), (610), (214), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1872 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1873 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1874 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1875 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1876 | 1792 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1877 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1878 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1879 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1880 | goto executed 2 times by 1 test: err;goto err; Executed by:
executed 2 times by 1 test: goto err; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1881 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1882 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1883 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1884 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1885 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1886 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1887 | if (!create_synthetic_message_hash(s,
| 0-678 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1888 | ((void *)0)
| 0-678 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1889 | , 0,
| 0-678 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1890 | ((void *)0)
| 0-678 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1891 | , 0)
| 0-678 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1892 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1893 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1894 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1895 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1896 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1897 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1898 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1899 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1900 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1901 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1902 | if (!ssl3_finish_mac(s, (unsigned char *)s->init_buf->data,
| 0-678 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1903 | s->init_num + 4)
| 0-678 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1904 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1905 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1906 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1907 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1908 | return executed 678 times by 1 test: MSG_PROCESS_FINISHED_READING;return MSG_PROCESS_FINISHED_READING; Executed by:
executed 678 times by 1 test: return MSG_PROCESS_FINISHED_READING; Executed by:
| 678 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1909 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1910 | CRYPTO_free(extensions, __FILE__, 1819); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1911 | return executed 12 times by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 12 times by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 12 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1912 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1913 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1914 | MSG_PROCESS_RETURN tls_process_server_certificate(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1915 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1916 | int i; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1917 | MSG_PROCESS_RETURN ret = MSG_PROCESS_ERROR; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1918 | unsigned long cert_list_len, cert_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1919 | X509 *x = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1920 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1921 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1922 | const unsigned char *certstart, *certbytes; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1923 | struct stack_st_X509 *sk = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1924 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1925 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1926 | EVP_PKEY *pkey = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1927 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1928 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1929 | size_t chainidx, certidx; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1930 | unsigned int context = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1931 | const SSL_CERT_LOOKUP *clu; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1932 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1933 | if ((
| 0-3020 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1934 | ((void *)0)
| 0-3020 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1935 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1936 | ossl_statem_fatal((s), (80), (367), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1937 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1938 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1939 | 1838 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1940 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1941 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1942 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1943 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1944 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1945 | if (((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-2881 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1946 | || context != 0
| 0-3020 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1947 | || !PACKET_get_net_3(pkt, &cert_list_len)
| 1-3019 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1948 | || PACKET_remaining(pkt) != cert_list_len
| 1-3018 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1949 | || PACKET_remaining(pkt) == 0
| 1-3017 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1950 | ossl_statem_fatal((s), (50), (367), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1951 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1952 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1953 | 1848 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1954 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1955 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1956 | goto executed 3 times by 1 test: err;goto err; Executed by:
executed 3 times by 1 test: goto err; Executed by:
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1957 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1958 | for (chainidx = 0; PACKET_remaining(pkt)
| 2568-3806 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1959 | if (!PACKET_get_net_3(pkt, &cert_len)
| 1-3805 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1960 | || !PACKET_get_bytes(pkt, &certbytes, cert_len)
| 11-3794 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1961 | ossl_statem_fatal((s), (50), (367), (135), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1962 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1963 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1964 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1965 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1966 | 1856 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1967 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1968 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1969 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1970 | goto executed 12 times by 1 test: err;goto err; Executed by:
executed 12 times by 1 test: goto err; Executed by:
| 12 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1971 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1972 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1973 | certstart = certbytes; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1974 | x = d2i_X509( | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1975 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1976 | , (const unsigned char **)&certbytes, cert_len); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1977 | if (x ==
| 437-3357 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1978 | ((void *)0)
| 437-3357 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1979 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1980 | ossl_statem_fatal((s), (42), (367), (13), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1981 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1982 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1983 | 1864 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1984 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1985 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1986 | goto executed 437 times by 1 test: err;goto err; Executed by:
executed 437 times by 1 test: goto err; Executed by:
| 437 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1987 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1988 | if (certbytes != (certstart + cert_len)
| 0-3357 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1989 | ossl_statem_fatal((s), (50), (367), (135), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1990 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1991 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1992 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1993 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1994 | 1870 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1995 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1996 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
1997 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1998 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1999 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2000 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2001 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-3178 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2002 | RAW_EXTENSION *rawexts = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2003 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2004 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2005 | PACKET extensions; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2006 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2007 | if (!PACKET_get_length_prefixed_2(pkt, &extensions)
| 0-562 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2008 | ossl_statem_fatal((s), (50), (367), (271), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2009 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2010 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2011 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2012 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2013 | 1881 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2014 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2015 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2016 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2017 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2018 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2019 | if (!tls_collect_extensions(s, &extensions,
| 0-562 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2020 | 0x1000, &rawexts,
| 0-562 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2021 |
| 0-562 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2022 | ((void *)0)
| 0-562 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2023 | , chainidx == 0)
| 0-562 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2024 | || !tls_parse_all_extensions(s, 0x1000,
| 0-562 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2025 | rawexts, x, chainidx,
| 0-562 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2026 | PACKET_remaining(pkt) == 0)
| 0-562 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2027 | CRYPTO_free(rawexts, __FILE__, 1890); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2028 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2029 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2030 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2031 | CRYPTO_free(rawexts, __FILE__, 1894); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2032 | } executed 562 times by 1 test: end of block Executed by:
| 562 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2033 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2034 | if (!sk_X509_push(sk, x)
| 0-3357 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2035 | ossl_statem_fatal((s), (80), (367), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2036 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2037 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2038 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2039 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2040 | 1900 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2041 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2042 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2043 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2044 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2045 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2046 | x = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2047 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2048 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2049 | } executed 3357 times by 1 test: end of block Executed by:
| 3357 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2050 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2051 | i = ssl_verify_cert_chain(s, sk); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2052 | if (s->verify_mode != 0x00
| 4-1627 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2053 | ossl_statem_fatal((s), (ssl_x509err2alert(s->verify_result)), (367), (134), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2054 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2055 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2056 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2057 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2058 | 1924 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2059 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2060 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2061 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2062 | goto executed 4 times by 1 test: err;goto err; Executed by:
executed 4 times by 1 test: goto err; Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2063 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2064 | ERR_clear_error(); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2065 | if (i > 1
| 0-2564 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2066 | ossl_statem_fatal((s), (40), (367), (i), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2067 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2068 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2069 | 1930 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2070 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2071 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2072 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2073 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2074 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2075 | s->session->peer_chain = sk; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2076 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2077 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2078 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2079 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2080 | x = sk_X509_value(sk, 0); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2081 | sk = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2082 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2083 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2084 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2085 | pkey = X509_get0_pubkey(x); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2086 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2087 | if (pkey ==
| 154-2410 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2088 | ((void *)0)
| 154-2410 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2089 | || EVP_PKEY_missing_parameters(pkey)
| 0-2410 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2090 | x = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2091 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2092 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2093 | ossl_statem_fatal((s), (80), (367), (239), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2094 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2095 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2096 | 1947 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2097 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2098 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2099 | goto executed 154 times by 1 test: err;goto err; Executed by:
executed 154 times by 1 test: goto err; Executed by:
| 154 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2100 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2101 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2102 | if ((
| 3-2407 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2103 | ((void *)0)
| 3-2407 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2104 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2105 | x = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2106 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2107 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2108 | ossl_statem_fatal((s), (47), (367), (247), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2109 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2110 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2111 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2112 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2113 | 1955 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2114 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2115 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2116 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2117 | goto executed 3 times by 1 test: err;goto err; Executed by:
executed 3 times by 1 test: goto err; Executed by:
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2118 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2119 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2120 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2121 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2122 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2123 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2124 | if (!(!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-2268 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2125 | if ((
| 16-1917 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2126 | x = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2127 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2128 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2129 | ossl_statem_fatal((s), (47), (367), (383), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2130 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2131 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2132 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2133 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2134 | 1968 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2135 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2136 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2137 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2138 | goto executed 16 times by 1 test: err;goto err; Executed by:
executed 16 times by 1 test: goto err; Executed by:
| 16 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2139 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2140 | } executed 1917 times by 1 test: end of block Executed by:
| 1917 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2141 | s->session->peer_type = certidx; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2142 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2143 | X509_free(s->session->peer); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2144 | X509_up_ref(x); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2145 | s->session->peer = x; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2146 | s->session->verify_result = s->verify_result; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2147 | x = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2148 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2149 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2150 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2151 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2152 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-2252 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2153 | && !ssl_handshake_hash(s, s->cert_verify_hash,
| 0-474 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2154 | sizeof(s->cert_verify_hash),
| 0-474 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2155 | &s->cert_verify_hash_len)
| 0-474 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2156 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2157 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2158 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2159 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2160 | ret = MSG_PROCESS_CONTINUE_READING; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2161 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2162 | err: code before this statement executed 2391 times by 1 test: err: Executed by:
| 2391 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2163 | X509_free(x); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2164 | sk_X509_pop_free(sk, X509_free); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2165 | return executed 3020 times by 1 test: ret;return ret; Executed by:
executed 3020 times by 1 test: return ret; Executed by:
| 3020 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2166 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2167 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2168 | static int tls_process_ske_psk_preamble(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2169 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2170 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2171 | PACKET psk_identity_hint; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2172 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2173 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2174 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2175 | if (!PACKET_get_length_prefixed_2(pkt, &psk_identity_hint)
| 0-2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2176 | ossl_statem_fatal((s), (50), (421), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2177 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2178 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2179 | 2006 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2180 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2181 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2182 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2183 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2184 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2185 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2186 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2187 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2188 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2189 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2190 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2191 | if (PACKET_remaining(&psk_identity_hint) > 128
| 0-2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2192 | ossl_statem_fatal((s), (40), (421), (146), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2193 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2194 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2195 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2196 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2197 | 2019 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2198 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2199 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2200 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2201 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2202 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2203 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2204 | if (PACKET_remaining(&psk_identity_hint) == 0
| 0-2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2205 | CRYPTO_free(s->session->psk_identity_hint, __FILE__, 2024); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2206 | s->session->psk_identity_hint = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2207 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2208 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2209 | } never executed: else if (!PACKET_strndup(&psk_identity_hint,end of block
| 0-2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2210 | &s->session->psk_identity_hint)
| 0-2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2211 | ossl_statem_fatal((s), (80), (421), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2212 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2213 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2214 | 2029 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2215 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2216 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2217 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2218 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2219 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2220 | return executed 2 times by 1 test: 1;return 1; Executed by:
executed 2 times by 1 test: return 1; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2221 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2222 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2223 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2224 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2225 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2226 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2227 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2228 | static int tls_process_ske_srp(SSL *s, PACKET *pkt, EVP_PKEY **pkey) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2229 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2230 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2231 | PACKET prime, generator, salt, server_pub; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2232 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2233 | if (!PACKET_get_length_prefixed_2(pkt, &prime)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2234 | || !PACKET_get_length_prefixed_2(pkt, &generator)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2235 | || !PACKET_get_length_prefixed_1(pkt, &salt)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2236 | || !PACKET_get_length_prefixed_2(pkt, &server_pub)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2237 | ossl_statem_fatal((s), (50), (422), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2238 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2239 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2240 | 2051 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2241 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2242 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2243 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2244 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2245 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2246 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2247 | if ((
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2248 | BN_bin2bn(PACKET_data(&prime),
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2249 | (int)PACKET_remaining(&prime),
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2250 | ((void *)0)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2251 | )) ==
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2252 | ((void *)0)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2253 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2254 | || (
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2255 | BN_bin2bn(PACKET_data(&generator),
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2256 | (int)PACKET_remaining(&generator),
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2257 | ((void *)0)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2258 | )) ==
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2259 | ((void *)0)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2260 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2261 | || (
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2262 | BN_bin2bn(PACKET_data(&salt),
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2263 | (int)PACKET_remaining(&salt),
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2264 | ((void *)0)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2265 | )) ==
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2266 | ((void *)0)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2267 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2268 | || (
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2269 | BN_bin2bn(PACKET_data(&server_pub),
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2270 | (int)PACKET_remaining(&server_pub),
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2271 | ((void *)0)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2272 | )) ==
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2273 | ((void *)0)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2274 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2275 | ossl_statem_fatal((s), (80), (422), (3), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2276 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2277 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2278 | 2069 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2279 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2280 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2281 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2282 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2283 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2284 | if (!srp_verify_server_param(s)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2285 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2286 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2287 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2288 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2289 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2290 | if (s->s3->tmp.new_cipher->algorithm_auth & (0x00000001U | 0x00000002U)
| 2-8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2291 | * executed 2 times by 1 test: pkey = X509_get0_pubkey(s->session->peer);*pkey = X509_get0_pubkey(s->session->peer); Executed by:
executed 2 times by 1 test: *pkey = X509_get0_pubkey(s->session->peer); Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2292 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2293 | return executed 10 times by 1 test: 1;return 1; Executed by:
executed 10 times by 1 test: return 1; Executed by:
| 10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2294 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2295 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2296 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2297 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2298 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2299 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2300 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2301 | static int tls_process_ske_dhe(SSL *s, PACKET *pkt, EVP_PKEY **pkey) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2302 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2303 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2304 | PACKET prime, generator, pub_key; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2305 | EVP_PKEY *peer_tmp = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2306 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2307 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2308 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2309 | DH *dh = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2310 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2311 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2312 | BIGNUM *p = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2313 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2314 | , *g = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2315 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2316 | , *bnpub_key = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2317 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2318 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2319 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2320 | int check_bits = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2321 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2322 | if (!PACKET_get_length_prefixed_2(pkt, &prime)
| 2-388 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2323 | || !PACKET_get_length_prefixed_2(pkt, &generator)
| 1-387 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2324 | || !PACKET_get_length_prefixed_2(pkt, &pub_key)
| 2-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2325 | ossl_statem_fatal((s), (50), (419), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2326 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2327 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2328 | 2105 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2329 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2330 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2331 | return executed 5 times by 1 test: 0;return 0; Executed by:
executed 5 times by 1 test: return 0; Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2332 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2333 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2334 | peer_tmp = EVP_PKEY_new(); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2335 | dh = DH_new(); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2336 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2337 | if (peer_tmp ==
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2338 | ((void *)0)
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2339 | || dh ==
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2340 | ((void *)0)
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2341 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2342 | ossl_statem_fatal((s), (80), (419), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2343 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2344 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2345 | 2114 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2346 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2347 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2348 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2349 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2350 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2351 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2352 | p = BN_bin2bn(PACKET_data(&prime), (int)PACKET_remaining(&prime), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2353 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2354 | ); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2355 | g = BN_bin2bn(PACKET_data(&generator), (int)PACKET_remaining(&generator), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2356 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2357 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2358 | ); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2359 | bnpub_key = BN_bin2bn(PACKET_data(&pub_key), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2360 | (int)PACKET_remaining(&pub_key), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2361 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2362 | ); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2363 | if (p ==
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2364 | ((void *)0)
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2365 | || g ==
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2366 | ((void *)0)
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2367 | || bnpub_key ==
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2368 | ((void *)0)
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2369 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2370 | ossl_statem_fatal((s), (80), (419), (3), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2371 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2372 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2373 | 2126 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2374 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2375 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2376 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2377 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2378 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2379 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2380 | if (BN_is_zero(bnpub_key)
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2381 | ossl_statem_fatal((s), (47), (419), (102), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2382 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2383 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2384 | 2133 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2385 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2386 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2387 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2388 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2389 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2390 | if (!DH_set0_pqg(dh, p,
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2391 | ((void *)0)
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2392 | , g)
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2393 | ossl_statem_fatal((s), (80), (419), (3), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2394 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2395 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2396 | 2139 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2397 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2398 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2399 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2400 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2401 | p = g = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2402 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2403 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2404 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2405 | if (DH_check_params(dh, &check_bits) == 0
| 0-385 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2406 | ossl_statem_fatal((s), (47), (419), (102), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2407 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2408 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2409 | 2146 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2410 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2411 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2412 | goto executed 9 times by 1 test: err;goto err; Executed by:
executed 9 times by 1 test: goto err; Executed by:
| 9 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2413 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2414 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2415 | if (!DH_set0_key(dh, bnpub_key,
| 0-376 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2416 | ((void *)0)
| 0-376 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2417 | )
| 0-376 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2418 | ossl_statem_fatal((s), (80), (419), (3), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2419 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2420 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2421 | 2152 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2422 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2423 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2424 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2425 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2426 | bnpub_key = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2427 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2428 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2429 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2430 | if (!ssl_security(s, (7 | (4 << 16)), DH_security_bits(dh), 0, dh)
| 0-376 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2431 | ossl_statem_fatal((s), (40), (419), (394), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2432 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2433 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2434 | 2159 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2435 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2436 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2437 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2438 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2439 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2440 | if (EVP_PKEY_assign((peer_tmp),28, (char *)(dh)) == 0
| 0-376 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2441 | ossl_statem_fatal((s), (80), (419), (6), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2442 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2443 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2444 | 2165 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2445 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2446 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2447 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2448 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2449 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2450 | s->s3->peer_tmp = peer_tmp; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2451 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2452 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2453 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2454 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2455 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2456 | if (s->s3->tmp.new_cipher->algorithm_auth & (0x00000001U | 0x00000002U)
| 104-272 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2457 | * executed 272 times by 1 test: pkey = X509_get0_pubkey(s->session->peer);*pkey = X509_get0_pubkey(s->session->peer); Executed by:
executed 272 times by 1 test: *pkey = X509_get0_pubkey(s->session->peer); Executed by:
| 272 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2458 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2459 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2460 | return executed 376 times by 1 test: 1;return 1; Executed by:
executed 376 times by 1 test: return 1; Executed by:
| 376 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2461 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2462 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2463 | BN_free(p); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2464 | BN_free(g); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2465 | BN_free(bnpub_key); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2466 | DH_free(dh); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2467 | EVP_PKEY_free(peer_tmp); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2468 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2469 | return executed 9 times by 1 test: 0;return 0; Executed by:
executed 9 times by 1 test: return 0; Executed by:
| 9 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2470 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2471 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2472 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2473 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2474 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2475 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2476 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2477 | static int tls_process_ske_ecdhe(SSL *s, PACKET *pkt, EVP_PKEY **pkey) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2478 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2479 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2480 | PACKET encoded_pt; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2481 | unsigned int curve_type, curve_id; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2482 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2483 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2484 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2485 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2486 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2487 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2488 | if (!PACKET_get_1(pkt, &curve_type)
| 0-990 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2489 | ossl_statem_fatal((s), (50), (420), (160), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2490 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2491 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2492 | 2209 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2493 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2494 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2495 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2496 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2497 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2498 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2499 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2500 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2501 | if (curve_type != 3
| 0-990 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2502 | || !tls1_check_group_id(s, curve_id, 1)
| 1-989 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2503 | ossl_statem_fatal((s), (47), (420), (378), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2504 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2505 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2506 | 2219 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2507 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2508 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2509 | return executed 1 time by 1 test: 0;return 0; Executed by:
executed 1 time by 1 test: return 0; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2510 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2511 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2512 | if ((
| 0-989 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2513 | ((void *)0)
| 0-989 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2514 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2515 | ossl_statem_fatal((s), (80), (420), (314), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2516 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2517 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2518 | 2225 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2519 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2520 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2521 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2522 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2523 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2524 | if (!PACKET_get_length_prefixed_1(pkt, &encoded_pt)
| 2-987 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2525 | ossl_statem_fatal((s), (50), (420), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2526 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2527 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2528 | 2231 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2529 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2530 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2531 | return executed 2 times by 1 test: 0;return 0; Executed by:
executed 2 times by 1 test: return 0; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2532 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2533 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2534 | if (!EVP_PKEY_set1_tls_encodedpoint(s->s3->peer_tmp,
| 3-984 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2535 | PACKET_data(&encoded_pt),
| 3-984 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2536 | PACKET_remaining(&encoded_pt))
| 3-984 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2537 | ossl_statem_fatal((s), (47), (420), (306), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2538 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2539 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2540 | 2239 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2541 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2542 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2543 | return executed 3 times by 1 test: 0;return 0; Executed by:
executed 3 times by 1 test: return 0; Executed by:
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2544 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2545 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2546 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2547 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2548 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2549 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2550 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2551 | if (s->s3->tmp.new_cipher->algorithm_auth & 0x00000008U
| 190-794 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2552 | * executed 190 times by 1 test: pkey = X509_get0_pubkey(s->session->peer);*pkey = X509_get0_pubkey(s->session->peer); Executed by:
executed 190 times by 1 test: *pkey = X509_get0_pubkey(s->session->peer); Executed by:
| 190 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2553 | else if (s->s3->tmp.new_cipher->algorithm_auth & 0x00000001U
| 12-782 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2554 | * executed 782 times by 1 test: pkey = X509_get0_pubkey(s->session->peer);*pkey = X509_get0_pubkey(s->session->peer); Executed by:
executed 782 times by 1 test: *pkey = X509_get0_pubkey(s->session->peer); Executed by:
| 782 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2555 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2556 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2557 | return executed 984 times by 1 test: 1;return 1; Executed by:
executed 984 times by 1 test: return 1; Executed by:
| 984 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2558 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2559 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2560 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2561 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2562 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2563 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2564 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2565 | MSG_PROCESS_RETURN tls_process_key_exchange(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2566 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2567 | long alg_k; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2568 | EVP_PKEY *pkey = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2569 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2570 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2571 | EVP_MD_CTX *md_ctx = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2572 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2573 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2574 | EVP_PKEY_CTX *pctx = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2575 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2576 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2577 | PACKET save_param_start, signature; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2578 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2579 | alg_k = s->s3->tmp.new_cipher->algorithm_mkey; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2580 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2581 | save_param_start = *pkt; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2582 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2583 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2584 | EVP_PKEY_free(s->s3->peer_tmp); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2585 | s->s3->peer_tmp = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2586 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2587 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2588 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2589 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2590 | if (alg_k & (0x00000008U | 0x00000040U | 0x00000080U | 0x00000100U)
| 2-1388 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2591 | if (!tls_process_ske_psk_preamble(s, pkt)
| 0-2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2592 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2593 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2594 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2595 | } executed 2 times by 1 test: end of block Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2596 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2597 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2598 | if (alg_k & (0x00000008U | 0x00000040U)
| 0-1390 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2599 | } never executed: else if (alg_k & 0x00000020Uend of block
| 0-1380 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2600 | if (!tls_process_ske_srp(s, pkt, &pkey)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2601 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2602 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2603 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2604 | } executed 10 times by 1 test: else if (alg_k & (0x00000002U | 0x00000100U)end of block Executed by:
| 10-990 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2605 | if (!tls_process_ske_dhe(s, pkt, &pkey)
| 14-376 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2606 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2607 | goto executed 14 times by 1 test: err;goto err; Executed by:
executed 14 times by 1 test: goto err; Executed by:
| 14 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2608 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2609 | } executed 376 times by 1 test: else if (alg_k & (0x00000004U | 0x00000080U)end of block Executed by:
| 0-990 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2610 | if (!tls_process_ske_ecdhe(s, pkt, &pkey)
| 6-984 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2611 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2612 | goto executed 6 times by 1 test: err;goto err; Executed by:
executed 6 times by 1 test: goto err; Executed by:
| 6 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2613 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2614 | } executed 984 times by 1 test: else if (alg_kend of block Executed by:
| 0-984 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2615 | ossl_statem_fatal((s), (10), (365), (244), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2616 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2617 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2618 | 2305 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2619 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2620 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2621 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2622 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2623 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2624 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2625 | if (pkey !=
| 124-1246 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2626 | ((void *)0)
| 124-1246 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2627 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2628 | PACKET params; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2629 | int maxsig; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2630 | const EVP_MD *md = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2631 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2632 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2633 | unsigned char *tbs; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2634 | size_t tbslen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2635 | int rv; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2636 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2637 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2638 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2639 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2640 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2641 | if (!PACKET_get_sub_packet(&save_param_start, ¶ms,
| 0-1246 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2642 | PACKET_remaining(&save_param_start) -
| 0-1246 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2643 | PACKET_remaining(pkt))
| 0-1246 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2644 | ossl_statem_fatal((s), (50), (365), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2645 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2646 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2647 | 2326 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2648 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2649 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2650 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2651 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2652 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2653 | if ((
| 359-887 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2654 | unsigned int sigalg; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2655 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2656 | if (!PACKET_get_net_2(pkt, &sigalg)
| 1-886 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2657 | ossl_statem_fatal((s), (50), (365), (160), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2658 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2659 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2660 | 2335 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2661 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2662 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2663 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2664 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2665 | if (tls12_check_peer_sigalg(s, sigalg, pkey) <=0
| 11-875 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2666 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2667 | goto executed 11 times by 1 test: err;goto err; Executed by:
executed 11 times by 1 test: goto err; Executed by:
| 11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2668 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2669 | } executed 875 times by 1 test: else if (!tls1_set_peer_legacy_sigalg(s, pkey)end of block Executed by:
| 1-875 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2670 | ossl_statem_fatal((s), (80), (365), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2671 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2672 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2673 | 2344 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2674 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2675 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2676 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2677 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2678 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2679 | if (!tls1_lookup_md(s->s3->tmp.peer_sigalg, &md)
| 0-1233 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2680 | ossl_statem_fatal((s), (80), (365), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2681 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2682 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2683 | 2350 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2684 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2685 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2686 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2687 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2688 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2689 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2690 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2691 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2692 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2693 | if (!PACKET_get_length_prefixed_2(pkt, &signature)
| 1-1232 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2694 | || PACKET_remaining(pkt) != 0
| 1-1231 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2695 | ossl_statem_fatal((s), (50), (365), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2696 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2697 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2698 | 2361 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2699 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2700 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2701 | goto executed 2 times by 1 test: err;goto err; Executed by:
executed 2 times by 1 test: goto err; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2702 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2703 | maxsig = EVP_PKEY_size(pkey); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2704 | if (maxsig < 0
| 0-1231 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2705 | ossl_statem_fatal((s), (80), (365), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2706 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2707 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2708 | 2367 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2709 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2710 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2711 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2712 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2713 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2714 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2715 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2716 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2717 | if (PACKET_remaining(&signature) > (size_t)maxsig
| 1-1230 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2718 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2719 | ossl_statem_fatal((s), (50), (365), (264), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2720 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2721 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2722 | 2377 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2723 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2724 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2725 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2726 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2727 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2728 | md_ctx = EVP_MD_CTX_new(); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2729 | if (md_ctx ==
| 0-1230 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2730 | ((void *)0)
| 0-1230 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2731 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2732 | ossl_statem_fatal((s), (80), (365), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2733 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2734 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2735 | 2384 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2736 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2737 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2738 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2739 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2740 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2741 | if (EVP_DigestVerifyInit(md_ctx, &pctx, md,
| 0-1230 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2742 | ((void *)0)
| 0-1230 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2743 | , pkey) <= 0
| 0-1230 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2744 | ossl_statem_fatal((s), (80), (365), (6), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2745 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2746 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2747 | 2390 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2748 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2749 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2750 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2751 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2752 | if ((s->s3->tmp.peer_sigalg !=
| 0-1230 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2753 | ((void *)0)
| 0-1230 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2754 | && s->s3->tmp.peer_sigalg->sig == 912
| 447-783 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2755 | if (RSA_pkey_ctx_ctrl(pctx, -1, (0x1000 + 1), 6,
| 0-447 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2756 | ((void *)0)
| 0-447 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2757 | ) <= 0
| 0-447 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2758 | || RSA_pkey_ctx_ctrl(pctx, ((1<<3)|(1<<4)), (0x1000 + 2), -1,
| 0-447 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2759 | ((void *)0)
| 0-447 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2760 | )
| 0-447 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2761 | <= 0
| 0-447 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2762 | ossl_statem_fatal((s), (80), (365), (6), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2763 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2764 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2765 | 2398 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2766 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2767 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2768 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2769 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2770 | } executed 447 times by 1 test: end of block Executed by:
| 447 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2771 | tbslen = construct_key_exchange_tbs(s, &tbs, PACKET_data(¶ms), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2772 | PACKET_remaining(¶ms)); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2773 | if (tbslen == 0
| 0-1230 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2774 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2775 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2776 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2777 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2778 | rv = EVP_DigestVerify(md_ctx, PACKET_data(&signature), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2779 | PACKET_remaining(&signature), tbs, tbslen); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2780 | CRYPTO_free(tbs, __FILE__, 2411); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2781 | if (rv <= 0
| 395-835 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2782 | ossl_statem_fatal((s), (51), (365), (123), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2783 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2784 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2785 | 2414 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2786 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2787 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2788 | goto executed 395 times by 1 test: err;goto err; Executed by:
executed 395 times by 1 test: goto err; Executed by:
| 395 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2789 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2790 | EVP_MD_CTX_free(md_ctx); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2791 | md_ctx = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2792 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2793 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2794 | } executed 835 times by 1 test: else {end of block Executed by:
| 835 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2795 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2796 | if (!(s->s3->tmp.new_cipher->algorithm_auth & (0x00000004U | 0x00000040U))
| 2-122 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2797 | && !(alg_k & (0x00000008U | 0x00000040U | 0x00000080U | 0x00000100U))
| 0-2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2798 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2799 | if (ssl3_check_cert_and_algorithm(s)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2800 | ossl_statem_fatal((s), (50), (365), (390), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2801 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2802 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2803 | 2426 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2804 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2805 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2806 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2807 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2808 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2809 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2810 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2811 | if (PACKET_remaining(pkt) != 0
| 1-123 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2812 | ossl_statem_fatal((s), (50), (365), (153), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2813 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2814 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2815 | 2434 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2816 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2817 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2818 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2819 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2820 | } executed 123 times by 1 test: end of block Executed by:
| 123 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2821 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2822 | return executed 958 times by 1 test: MSG_PROCESS_CONTINUE_READING;return MSG_PROCESS_CONTINUE_READING; Executed by:
executed 958 times by 1 test: return MSG_PROCESS_CONTINUE_READING; Executed by:
| 958 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2823 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2824 | EVP_MD_CTX_free(md_ctx); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2825 | return executed 432 times by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 432 times by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 432 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2826 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2827 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2828 | MSG_PROCESS_RETURN tls_process_certificate_request(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2829 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2830 | size_t i; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2831 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2832 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2833 | for (i = 0; i < 9
| 142-1278 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2834 | s->s3->tmp.valid_flags[i] = 0; executed 1278 times by 1 test: s->s3->tmp.valid_flags[i] = 0; Executed by:
| 1278 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2835 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2836 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-129 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2837 | PACKET reqctx, extensions; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2838 | RAW_EXTENSION *rawexts = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2839 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2840 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2841 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2842 | if ((
| 1-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2843 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2844 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2845 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2846 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2847 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2848 | return executed 1 time by 1 test: MSG_PROCESS_FINISHED_READING;return MSG_PROCESS_FINISHED_READING; Executed by:
executed 1 time by 1 test: return MSG_PROCESS_FINISHED_READING; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2849 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2850 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2851 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2852 | CRYPTO_free(s->s3->tmp.ctype, __FILE__, 2467); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2853 | s->s3->tmp.ctype = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2854 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2855 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2856 | s->s3->tmp.ctype_len = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2857 | CRYPTO_free(s->pha_context, __FILE__, 2470); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2858 | s->pha_context = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2859 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2860 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2861 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2862 | if (!PACKET_get_length_prefixed_1(pkt, &reqctx)
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2863 | !PACKET_memdup(&reqctx, &s->pha_context, &s->pha_context_len)
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2864 | ossl_statem_fatal((s), (50), (361), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2865 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2866 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2867 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2868 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2869 | 2477 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2870 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2871 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2872 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2873 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2874 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2875 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2876 | if (!PACKET_get_length_prefixed_2(pkt, &extensions)
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2877 | ossl_statem_fatal((s), (50), (361), (271), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2878 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2879 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2880 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2881 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2882 | 2484 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2883 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2884 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2885 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2886 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2887 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2888 | if (!tls_collect_extensions(s, &extensions,
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2889 | 0x4000,
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2890 | &rawexts,
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2891 | ((void *)0)
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2892 | , 1)
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2893 | || !tls_parse_all_extensions(s, 0x4000,
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2894 | rawexts,
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2895 | ((void *)0)
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2896 | , 0, 1)
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2897 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2898 | CRYPTO_free(rawexts, __FILE__, 2493); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2899 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2900 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2901 | CRYPTO_free(rawexts, __FILE__, 2496); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2902 | if (!tls1_process_sigalgs(s)
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2903 | ossl_statem_fatal((s), (80), (361), (271), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2904 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2905 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2906 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2907 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2908 | 2500 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2909 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2910 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2911 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2912 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2913 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2914 | } executed 43 times by 1 test: else {end of block Executed by:
| 43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2915 | PACKET ctypes; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2916 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2917 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2918 | if (!PACKET_get_length_prefixed_1(pkt, &ctypes)
| 1-97 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2919 | ossl_statem_fatal((s), (50), (361), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2920 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2921 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2922 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2923 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2924 | 2510 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2925 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2926 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2927 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2928 | return executed 1 time by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 1 time by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2929 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2930 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2931 | if (!PACKET_memdup(&ctypes, &s->s3->tmp.ctype, &s->s3->tmp.ctype_len)
| 0-97 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2932 | ossl_statem_fatal((s), (80), (361), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2933 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2934 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2935 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2936 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2937 | 2517 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2938 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2939 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2940 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2941 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2942 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2943 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2944 | if ((
| 17-80 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2945 | PACKET sigalgs; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2946 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2947 | if (!PACKET_get_length_prefixed_2(pkt, &sigalgs)
| 2-78 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2948 | ossl_statem_fatal((s), (50), (361), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2949 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2950 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2951 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2952 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2953 | 2527 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2954 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2955 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2956 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2957 | return executed 2 times by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 2 times by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2958 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2959 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2960 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2961 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2962 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2963 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2964 | if (!tls1_save_sigalgs(s, &sigalgs, 0)
| 2-76 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2965 | ossl_statem_fatal((s), (80), (361), (360), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2966 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2967 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2968 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2969 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2970 | 2538 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2971 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2972 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2973 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2974 | return executed 2 times by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 2 times by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2975 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2976 | if (!tls1_process_sigalgs(s)
| 0-76 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2977 | ossl_statem_fatal((s), (80), (361), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2978 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2979 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2980 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2981 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2982 | 2544 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2983 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2984 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2985 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2986 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2987 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2988 | } executed 76 times by 1 test: end of block Executed by:
| 76 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2989 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2990 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2991 | if (!parse_ca_names(s, pkt)
| 43-50 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2992 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2993 | return executed 50 times by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 50 times by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 50 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2994 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2995 | } executed 43 times by 1 test: end of block Executed by:
| 43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2996 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
2997 | if (PACKET_remaining(pkt) != 0
| 3-83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2998 | ossl_statem_fatal((s), (50), (361), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
2999 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3000 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3001 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3002 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3003 | 2559 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3004 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3005 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3006 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3007 | return executed 3 times by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 3 times by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3008 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3009 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3010 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3011 | s->s3->tmp.cert_req = 1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3012 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3013 | return executed 83 times by 1 test: MSG_PROCESS_CONTINUE_PROCESSING;return MSG_PROCESS_CONTINUE_PROCESSING; Executed by:
executed 83 times by 1 test: return MSG_PROCESS_CONTINUE_PROCESSING; Executed by:
| 83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3014 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3015 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3016 | MSG_PROCESS_RETURN tls_process_new_session_ticket(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3017 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3018 | unsigned int ticklen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3019 | unsigned long ticket_lifetime_hint, age_add = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3020 | unsigned int sess_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3021 | RAW_EXTENSION *exts = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3022 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3023 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3024 | PACKET nonce; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3025 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3026 | PACKET_null_init(&nonce); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3027 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3028 | if (!PACKET_get_net_4(pkt, &ticket_lifetime_hint)
| 1-1872 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3029 | || ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-1728 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3030 | && (!PACKET_get_net_4(pkt, &age_add)
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3031 | || !PACKET_get_length_prefixed_1(pkt, &nonce)
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3032 | || !PACKET_get_net_2(pkt, &ticklen)
| 0-1872 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3033 | || ((
| 0-1871 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3034 | : PACKET_remaining(pkt) != ticklen)
| 1-1871 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3035 | ossl_statem_fatal((s), (50), (366), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3036 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3037 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3038 | 2587 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3039 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3040 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3041 | goto executed 2 times by 1 test: err;goto err; Executed by:
executed 2 times by 1 test: goto err; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3042 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3043 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3044 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3045 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3046 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3047 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3048 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3049 | if (ticklen == 0
| 4-1867 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3050 | return executed 4 times by 1 test: MSG_PROCESS_CONTINUE_READING;return MSG_PROCESS_CONTINUE_READING; Executed by:
executed 4 times by 1 test: return MSG_PROCESS_CONTINUE_READING; Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3051 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-1723 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3052 | SSL_SESSION *new_sess; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3053 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3054 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3055 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3056 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3057 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3058 | if ((
| 0-950 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3059 | ossl_statem_fatal((s), (80), (366), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3060 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3061 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3062 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3063 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3064 | 2617 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3065 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3066 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3067 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3068 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3069 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3070 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3071 | if ((
| 100-850 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3072 | && !(!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-100 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3073 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3074 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3075 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3076 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3077 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3078 | SSL_CTX_remove_session(s->session_ctx, s->session); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3079 | } executed 1 time by 1 test: end of block Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3080 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3081 | SSL_SESSION_free(s->session); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3082 | s->session = new_sess; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3083 | } executed 950 times by 1 test: end of block Executed by:
| 950 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3084 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3085 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3086 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3087 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3088 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3089 | s->session->time = (long)time( | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3090 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3091 | ); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3092 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3093 | CRYPTO_free(s->session->ext.tick, __FILE__, 2641); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3094 | s->session->ext.tick = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3095 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3096 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3097 | s->session->ext.ticklen = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3098 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3099 | s->session->ext.tick = CRYPTO_malloc(ticklen, __FILE__, 2645); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3100 | if (s->session->ext.tick ==
| 0-1867 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3101 | ((void *)0)
| 0-1867 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3102 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3103 | ossl_statem_fatal((s), (80), (366), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3104 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3105 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3106 | 2648 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3107 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3108 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3109 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3110 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3111 | if (!PACKET_copy_bytes(pkt, s->session->ext.tick, ticklen)
| 0-1867 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3112 | ossl_statem_fatal((s), (50), (366), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3113 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3114 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3115 | 2653 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3116 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3117 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3118 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3119 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3120 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3121 | s->session->ext.tick_lifetime_hint = ticket_lifetime_hint; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3122 | s->session->ext.tick_age_add = age_add; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3123 | s->session->ext.ticklen = ticklen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3124 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3125 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-1723 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3126 | PACKET extpkt; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3127 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3128 | if (!PACKET_as_length_prefixed_2(pkt, &extpkt)
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3129 | || PACKET_remaining(pkt) != 0
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3130 | ossl_statem_fatal((s), (50), (366), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3131 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3132 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3133 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3134 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3135 | 2668 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3136 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3137 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3138 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3139 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3140 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3141 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3142 | if (!tls_collect_extensions(s, &extpkt,
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3143 | 0x2000, &exts,
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3144 |
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3145 | ((void *)0)
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3146 | , 1)
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3147 | || !tls_parse_all_extensions(s,
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3148 | 0x2000,
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3149 | exts,
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3150 | ((void *)0)
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3151 | , 0, 1)
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3152 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3153 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3154 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3155 | } executed 947 times by 1 test: end of block Executed by:
| 947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3156 | if (!EVP_Digest(s->session->ext.tick, ticklen,
| 0-1867 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3157 | s->session->session_id, &sess_len,
| 0-1867 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3158 | EVP_sha256(),
| 0-1867 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3159 | ((void *)0)
| 0-1867 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3160 | )
| 0-1867 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3161 | ossl_statem_fatal((s), (80), (366), (6), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3162 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3163 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3164 | 2702 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3165 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3166 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3167 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3168 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3169 | s->session->session_id_length = sess_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3170 | s->session->not_resumable = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3171 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3172 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3173 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-1723 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3174 | const EVP_MD *md = ssl_handshake_md(s); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3175 | int hashleni = EVP_MD_size(md); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3176 | size_t hashlen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3177 | static const unsigned char nonce_label[] = "resumption"; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3178 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3179 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3180 | if (!((hashleni >= 0) != 0)
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3181 | ossl_statem_fatal((s), (80), (366), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3182 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3183 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3184 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3185 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3186 | 2719 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3187 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3188 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3189 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3190 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3191 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3192 | hashlen = (size_t)hashleni; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3193 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3194 | if (!tls13_hkdf_expand(s, md, s->resumption_master_secret,
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3195 | nonce_label,
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3196 | sizeof(nonce_label) - 1,
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3197 | PACKET_data(&nonce),
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3198 | PACKET_remaining(&nonce),
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3199 | s->session->master_key,
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3200 | hashlen)
| 0-947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3201 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3202 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3203 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3204 | s->session->master_key_length = hashlen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3205 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3206 | CRYPTO_free(exts, __FILE__, 2736); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3207 | ssl_update_cache(s, 0x0001); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3208 | return executed 947 times by 1 test: MSG_PROCESS_FINISHED_READING;return MSG_PROCESS_FINISHED_READING; Executed by:
executed 947 times by 1 test: return MSG_PROCESS_FINISHED_READING; Executed by:
| 947 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3209 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3210 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3211 | return executed 920 times by 1 test: MSG_PROCESS_CONTINUE_READING;return MSG_PROCESS_CONTINUE_READING; Executed by:
executed 920 times by 1 test: return MSG_PROCESS_CONTINUE_READING; Executed by:
| 920 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3212 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3213 | CRYPTO_free(exts, __FILE__, 2743); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3214 | return executed 2 times by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 2 times by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3215 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3216 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3217 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3218 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3219 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3220 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3221 | int tls_process_cert_status_body(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3222 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3223 | size_t resplen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3224 | unsigned int type; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3225 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3226 | if (!PACKET_get_1(pkt, &type)
| 0-11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3227 | || type != 1
| 0-11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3228 | ossl_statem_fatal((s), (50), (495), (329), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3229 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3230 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3231 | 2759 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3232 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3233 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3234 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3235 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3236 | if (!PACKET_get_net_3_len(pkt, &resplen)
| 0-11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3237 | || PACKET_remaining(pkt) != resplen
| 0-11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3238 | ossl_statem_fatal((s), (50), (495), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3239 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3240 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3241 | 2765 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3242 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3243 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3244 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3245 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3246 | s->ext.ocsp.resp = CRYPTO_malloc(resplen, __FILE__, 2768); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3247 | if (s->ext.ocsp.resp ==
| 0-11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3248 | ((void *)0)
| 0-11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3249 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3250 | ossl_statem_fatal((s), (80), (495), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3251 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3252 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3253 | 2771 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3254 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3255 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3256 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3257 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3258 | if (!PACKET_copy_bytes(pkt, s->ext.ocsp.resp, resplen)
| 0-11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3259 | ossl_statem_fatal((s), (50), (495), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3260 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3261 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3262 | 2776 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3263 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3264 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3265 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3266 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3267 | s->ext.ocsp.resp_len = resplen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3268 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3269 | return executed 11 times by 1 test: 1;return 1; Executed by:
executed 11 times by 1 test: return 1; Executed by:
| 11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3270 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3271 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3272 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3273 | MSG_PROCESS_RETURN tls_process_cert_status(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3274 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3275 | if (!tls_process_cert_status_body(s, pkt)
| 0-5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3276 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3277 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3278 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3279 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3280 | return executed 5 times by 1 test: MSG_PROCESS_CONTINUE_READING;return MSG_PROCESS_CONTINUE_READING; Executed by:
executed 5 times by 1 test: return MSG_PROCESS_CONTINUE_READING; Executed by:
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3281 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3282 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3283 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3284 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3285 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3286 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3287 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3288 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3289 | int tls_process_initial_server_flight(SSL *s) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3290 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3291 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3292 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3293 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3294 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3295 | if (!ssl3_check_cert_and_algorithm(s)
| 1-2002 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3296 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3297 | return executed 1 time by 1 test: 0;return 0; Executed by:
executed 1 time by 1 test: return 0; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3298 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3299 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3300 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3301 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3302 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3303 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3304 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3305 | if (s->ext.status_type != -1
| 22-1980 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3306 | && s->ctx->ext.status_cb !=
| 11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3307 | ((void *)0)
| 11 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3308 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3309 | int ret = s->ctx->ext.status_cb(s, s->ctx->ext.status_arg); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3310 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3311 | if (ret == 0
| 2-9 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3312 | ossl_statem_fatal((s), (113), (442), (328), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3313 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3314 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3315 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3316 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3317 | 2824 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3318 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3319 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3320 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3321 | return executed 2 times by 1 test: 0;return 0; Executed by:
executed 2 times by 1 test: return 0; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3322 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3323 | if (ret < 0
| 0-9 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3324 | ossl_statem_fatal((s), (80), (442), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3325 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3326 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3327 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3328 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3329 | 2830 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3330 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3331 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3332 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3333 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3334 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3335 | } executed 9 times by 1 test: end of block Executed by:
| 9 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3336 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3337 | if (s->ct_validation_callback !=
| 11-1989 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3338 | ((void *)0)
| 11-1989 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3339 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3340 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3341 | if (!ssl_validate_ct(s)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3342 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3343 | return executed 1 time by 1 test: 0;return 0; Executed by:
executed 1 time by 1 test: return 0; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3344 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3345 | } executed 10 times by 1 test: end of block Executed by:
| 10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3346 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3347 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3348 | return executed 1999 times by 1 test: 1;return 1; Executed by:
executed 1999 times by 1 test: return 1; Executed by:
| 1999 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3349 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3350 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3351 | MSG_PROCESS_RETURN tls_process_server_done(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3352 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3353 | if (PACKET_remaining(pkt) > 0
| 0-1428 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3354 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3355 | ossl_statem_fatal((s), (50), (368), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3356 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3357 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3358 | 2852 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3359 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3360 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3361 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3362 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3363 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3364 | if (s->s3->tmp.new_cipher->algorithm_mkey & 0x00000020U
| 10-1418 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3365 | if (SRP_Calc_A_param(s) <= 0
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3366 | ossl_statem_fatal((s), (80), (368), (361), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3367 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3368 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3369 | 2859 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3370 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3371 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3372 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3373 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3374 | } executed 10 times by 1 test: end of block Executed by:
| 10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3375 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3376 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3377 | if (!tls_process_initial_server_flight(s)
| 2-1426 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3378 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3379 | return executed 2 times by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 2 times by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3380 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3381 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3382 | return executed 1426 times by 1 test: MSG_PROCESS_FINISHED_READING;return MSG_PROCESS_FINISHED_READING; Executed by:
executed 1426 times by 1 test: return MSG_PROCESS_FINISHED_READING; Executed by:
| 1426 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3383 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3384 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3385 | static int tls_construct_cke_psk_preamble(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3386 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3387 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3388 | int ret = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3389 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3390 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3391 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3392 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3393 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3394 | char identity[128 + 1]; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3395 | size_t identitylen = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3396 | unsigned char psk[256]; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3397 | unsigned char *tmppsk = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3398 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3399 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3400 | char *tmpidentity = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3401 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3402 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3403 | size_t psklen = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3404 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3405 | if (s->psk_client_callback ==
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3406 | ((void *)0)
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3407 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3408 | ossl_statem_fatal((s), (80), (407), (224), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3409 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3410 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3411 | 2891 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3412 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3413 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3414 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3415 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3416 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3417 | memset(identity, 0, sizeof(identity)); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3418 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3419 | psklen = s->psk_client_callback(s, s->session->psk_identity_hint, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3420 | identity, sizeof(identity) - 1, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3421 | psk, sizeof(psk)); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3422 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3423 | if (psklen > 256
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3424 | ossl_statem_fatal((s), (40), (407), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3425 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3426 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3427 | 2903 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3428 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3429 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3430 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3431 | } else if (psklen == 0
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3432 | ossl_statem_fatal((s), (40), (407), (223), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3433 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3434 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3435 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3436 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3437 | 2908 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3438 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3439 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3440 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3441 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3442 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3443 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3444 | identitylen = strlen(identity); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3445 | if (identitylen > 128
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3446 | ossl_statem_fatal((s), (80), (407), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3447 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3448 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3449 | 2915 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3450 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3451 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3452 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3453 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3454 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3455 | tmppsk = CRYPTO_memdup((psk), psklen, __FILE__, 2919); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3456 | tmpidentity = CRYPTO_strdup(identity, __FILE__, 2920); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3457 | if (tmppsk ==
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3458 | ((void *)0)
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3459 | || tmpidentity ==
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3460 | ((void *)0)
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3461 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3462 | ossl_statem_fatal((s), (80), (407), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3463 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3464 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3465 | 2923 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3466 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3467 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3468 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3469 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3470 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3471 | CRYPTO_free(s->s3->tmp.psk, __FILE__, 2927); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3472 | s->s3->tmp.psk = tmppsk; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3473 | s->s3->tmp.psklen = psklen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3474 | tmppsk = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3475 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3476 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3477 | CRYPTO_free(s->session->psk_identity, __FILE__, 2931); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3478 | s->session->psk_identity = tmpidentity; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3479 | tmpidentity = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3480 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3481 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3482 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3483 | if (!WPACKET_sub_memcpy__((pkt), (identity), (identitylen), 2)
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3484 | ossl_statem_fatal((s), (80), (407), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3485 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3486 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3487 | 2937 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3488 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3489 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3490 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3491 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3492 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3493 | ret = 1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3494 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3495 | err: code before this statement executed 29 times by 1 test: err: Executed by:
| 29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3496 | OPENSSL_cleanse(psk, psklen); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3497 | OPENSSL_cleanse(identity, sizeof(identity)); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3498 | CRYPTO_clear_free(tmppsk, psklen, __FILE__, 2946); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3499 | CRYPTO_clear_free(tmpidentity, identitylen, __FILE__, 2947); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3500 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3501 | return executed 29 times by 1 test: ret;return ret; Executed by:
executed 29 times by 1 test: return ret; Executed by:
| 29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3502 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3503 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3504 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3505 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3506 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3507 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3508 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3509 | static int tls_construct_cke_rsa(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3510 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3511 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3512 | unsigned char *encdata = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3513 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3514 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3515 | EVP_PKEY *pkey = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3516 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3517 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3518 | EVP_PKEY_CTX *pctx = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3519 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3520 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3521 | size_t enclen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3522 | unsigned char *pms = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3523 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3524 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3525 | size_t pmslen = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3526 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3527 | if (s->session->peer ==
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3528 | ((void *)0)
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3529 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3530 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3531 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3532 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3533 | ossl_statem_fatal((s), (80), (409), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3534 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3535 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3536 | 2972 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3537 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3538 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3539 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3540 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3541 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3542 | pkey = X509_get0_pubkey(s->session->peer); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3543 | if (EVP_PKEY_get0_RSA(pkey) ==
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3544 | ((void *)0)
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3545 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3546 | ossl_statem_fatal((s), (80), (409), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3547 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3548 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3549 | 2979 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3550 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3551 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3552 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3553 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3554 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3555 | pmslen = 48; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3556 | pms = CRYPTO_malloc(pmslen, __FILE__, 2984); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3557 | if (pms ==
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3558 | ((void *)0)
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3559 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3560 | ossl_statem_fatal((s), (80), (409), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3561 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3562 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3563 | 2987 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3564 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3565 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3566 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3567 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3568 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3569 | pms[0] = s->client_version >> 8; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3570 | pms[1] = s->client_version & 0xff; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3571 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3572 | if (RAND_bytes(pms + 2, (int)(pmslen - 2)) <= 0
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3573 | ossl_statem_fatal((s), (80), (409), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3574 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3575 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3576 | 2996 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3577 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3578 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3579 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3580 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3581 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3582 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3583 | if (s->version > 0x0300
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3584 | ossl_statem_fatal((s), (80), (409), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3585 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3586 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3587 | 3003 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3588 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3589 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3590 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3591 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3592 | pctx = EVP_PKEY_CTX_new(pkey, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3593 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3594 | ); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3595 | if (pctx ==
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3596 | ((void *)0)
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3597 | || EVP_PKEY_encrypt_init(pctx) <= 0
| 0-442 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3598 | || EVP_PKEY_encrypt(pctx,
| 1-441 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3599 | ((void *)0)
| 1-441 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3600 | , &enclen, pms, pmslen) <= 0
| 1-441 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3601 | ossl_statem_fatal((s), (80), (409), (6), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3602 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3603 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3604 | 3010 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3605 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3606 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3607 | goto executed 1 time by 1 test: err;goto err; Executed by:
executed 1 time by 1 test: goto err; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3608 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3609 | if (!WPACKET_allocate_bytes(pkt, enclen, &encdata)
| 0-441 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3610 | || EVP_PKEY_encrypt(pctx, encdata, &enclen, pms, pmslen) <= 0
| 17-424 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3611 | ossl_statem_fatal((s), (80), (409), (119), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3612 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3613 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3614 | 3016 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3615 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3616 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3617 | goto executed 17 times by 1 test: err;goto err; Executed by:
executed 17 times by 1 test: goto err; Executed by:
| 17 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3618 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3619 | EVP_PKEY_CTX_free(pctx); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3620 | pctx = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3621 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3622 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3623 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3624 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3625 | if (s->version > 0x0300
| 0-424 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3626 | ossl_statem_fatal((s), (80), (409), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3627 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3628 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3629 | 3025 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3630 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3631 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3632 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3633 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3634 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3635 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3636 | if (!ssl_log_rsa_client_key_exchange(s, encdata, enclen, pms, pmslen)
| 0-424 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3637 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3638 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3639 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3640 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3641 | s->s3->tmp.pms = pms; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3642 | s->s3->tmp.pmslen = pmslen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3643 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3644 | return executed 424 times by 1 test: 1;return 1; Executed by:
executed 424 times by 1 test: return 1; Executed by:
| 424 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3645 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3646 | CRYPTO_clear_free(pms, pmslen, __FILE__, 3040); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3647 | EVP_PKEY_CTX_free(pctx); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3648 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3649 | return executed 18 times by 1 test: 0;return 0; Executed by:
executed 18 times by 1 test: return 0; Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3650 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3651 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3652 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3653 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3654 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3655 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3656 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3657 | static int tls_construct_cke_dhe(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3658 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3659 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3660 | DH *dh_clnt = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3661 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3662 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3663 | const BIGNUM *pub_key; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3664 | EVP_PKEY *ckey = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3665 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3666 | , *skey = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3667 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3668 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3669 | unsigned char *keybytes = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3670 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3671 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3672 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3673 | skey = s->s3->peer_tmp; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3674 | if (skey ==
| 0-154 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3675 | ((void *)0)
| 0-154 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3676 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3677 | ossl_statem_fatal((s), (80), (404), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3678 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3679 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3680 | 3062 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3681 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3682 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3683 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3684 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3685 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3686 | ckey = ssl_generate_pkey(skey); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3687 | if (ckey ==
| 0-154 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3688 | ((void *)0)
| 0-154 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3689 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3690 | ossl_statem_fatal((s), (80), (404), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3691 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3692 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3693 | 3069 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3694 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3695 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3696 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3697 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3698 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3699 | dh_clnt = EVP_PKEY_get0_DH(ckey); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3700 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3701 | if (dh_clnt ==
| 0-154 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3702 | ((void *)0)
| 0-154 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3703 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3704 | ossl_statem_fatal((s), (80), (404), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3705 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3706 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3707 | 3077 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3708 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3709 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3710 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3711 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3712 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3713 | if (ssl_derive(s, ckey, skey, 0) == 0
| 15-139 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3714 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3715 | goto executed 15 times by 1 test: err;goto err; Executed by:
executed 15 times by 1 test: goto err; Executed by:
| 15 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3716 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3717 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3718 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3719 | DH_get0_key(dh_clnt, &pub_key, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3720 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3721 | ); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3722 | if (!WPACKET_sub_allocate_bytes__((pkt), (((BN_num_bits(pub_key)+7)/8)), (&keybytes), 2)
| 0-139 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3723 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3724 | ossl_statem_fatal((s), (80), (404), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3725 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3726 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3727 | 3091 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3728 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3729 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3730 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3731 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3732 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3733 | BN_bn2bin(pub_key, keybytes); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3734 | EVP_PKEY_free(ckey); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3735 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3736 | return executed 139 times by 1 test: 1;return 1; Executed by:
executed 139 times by 1 test: return 1; Executed by:
| 139 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3737 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3738 | EVP_PKEY_free(ckey); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3739 | return executed 15 times by 1 test: 0;return 0; Executed by:
executed 15 times by 1 test: return 0; Executed by:
| 15 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3740 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3741 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3742 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3743 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3744 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3745 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3746 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3747 | static int tls_construct_cke_ecdhe(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3748 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3749 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3750 | unsigned char *encodedPoint = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3751 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3752 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3753 | size_t encoded_pt_len = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3754 | EVP_PKEY *ckey = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3755 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3756 | , *skey = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3757 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3758 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3759 | int ret = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3760 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3761 | skey = s->s3->peer_tmp; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3762 | if (skey ==
| 0-793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3763 | ((void *)0)
| 0-793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3764 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3765 | ossl_statem_fatal((s), (80), (405), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3766 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3767 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3768 | 3120 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3769 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3770 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3771 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3772 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3773 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3774 | ckey = ssl_generate_pkey(skey); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3775 | if (ckey ==
| 0-793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3776 | ((void *)0)
| 0-793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3777 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3778 | ossl_statem_fatal((s), (80), (405), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3779 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3780 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3781 | 3127 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3782 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3783 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3784 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3785 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3786 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3787 | if (ssl_derive(s, ckey, skey, 0) == 0
| 0-793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3788 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3789 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3790 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3791 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3792 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3793 | encoded_pt_len = EVP_PKEY_get1_tls_encodedpoint(ckey, &encodedPoint); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3794 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3795 | if (encoded_pt_len == 0
| 0-793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3796 | ossl_statem_fatal((s), (80), (405), (16), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3797 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3798 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3799 | 3141 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3800 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3801 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3802 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3803 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3804 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3805 | if (!WPACKET_sub_memcpy__((pkt), (encodedPoint), (encoded_pt_len), 1)
| 0-793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3806 | ossl_statem_fatal((s), (80), (405), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3807 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3808 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3809 | 3147 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3810 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3811 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3812 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3813 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3814 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3815 | ret = 1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3816 | err: code before this statement executed 793 times by 1 test: err: Executed by:
| 793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3817 | CRYPTO_free(encodedPoint, __FILE__, 3153); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3818 | EVP_PKEY_free(ckey); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3819 | return executed 793 times by 1 test: ret;return ret; Executed by:
executed 793 times by 1 test: return ret; Executed by:
| 793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3820 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3821 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3822 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3823 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3824 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3825 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3826 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3827 | static int tls_construct_cke_gost(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3828 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3829 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3830 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3831 | EVP_PKEY_CTX *pkey_ctx = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3832 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3833 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3834 | X509 *peer_cert; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3835 | size_t msglen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3836 | unsigned int md_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3837 | unsigned char shared_ukm[32], tmp[256]; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3838 | EVP_MD_CTX *ukm_hash = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3839 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3840 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3841 | int dgst_nid = 809; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3842 | unsigned char *pms = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3843 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3844 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3845 | size_t pmslen = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3846 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3847 | if ((
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3848 | dgst_nid = 982; never executed: dgst_nid = 982; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3849 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3850 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3851 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3852 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3853 | peer_cert = s->session->peer; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3854 | if (!peer_cert
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3855 | ossl_statem_fatal((s), (40), (406), (330), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3856 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3857 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3858 | 3186 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3859 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3860 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3861 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3862 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3863 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3864 | pkey_ctx = EVP_PKEY_CTX_new(X509_get0_pubkey(peer_cert), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3865 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3866 | ); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3867 | if (pkey_ctx ==
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3868 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3869 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3870 | ossl_statem_fatal((s), (80), (406), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3871 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3872 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3873 | 3193 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3874 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3875 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3876 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3877 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3878 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3879 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3880 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3881 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3882 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3883 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3884 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3885 | pmslen = 32; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3886 | pms = CRYPTO_malloc(pmslen, __FILE__, 3204); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3887 | if (pms ==
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3888 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3889 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3890 | ossl_statem_fatal((s), (80), (406), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3891 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3892 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3893 | 3207 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3894 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3895 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3896 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3897 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3898 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3899 | if (EVP_PKEY_encrypt_init(pkey_ctx) <= 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3900 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3901 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3902 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3903 | || RAND_bytes(pms, (int)pmslen) <= 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3904 | ossl_statem_fatal((s), (80), (406), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3905 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3906 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3907 | 3217 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3908 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3909 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3910 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3911 | }; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3912 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3913 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3914 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3915 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3916 | ukm_hash = EVP_MD_CTX_new(); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3917 | if (ukm_hash ==
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3918 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3919 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3920 | || EVP_DigestInit(ukm_hash, EVP_get_digestbyname(OBJ_nid2sn(dgst_nid))) <= 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3921 | || EVP_DigestUpdate(ukm_hash, s->s3->client_random,
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3922 | 32) <= 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3923 | || EVP_DigestUpdate(ukm_hash, s->s3->server_random,
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3924 | 32) <= 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3925 | || EVP_DigestFinal_ex(ukm_hash, shared_ukm, &md_len) <= 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3926 | ossl_statem_fatal((s), (80), (406), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3927 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3928 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3929 | 3233 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3930 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3931 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3932 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3933 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3934 | EVP_MD_CTX_free(ukm_hash); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3935 | ukm_hash = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3936 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3937 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3938 | if (EVP_PKEY_CTX_ctrl(pkey_ctx, -1, (1<<8),
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3939 | 8, 8, shared_ukm) < 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3940 | ossl_statem_fatal((s), (80), (406), (274), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3941 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3942 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3943 | 3241 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3944 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3945 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3946 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3947 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3948 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3949 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3950 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3951 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3952 | msglen = 255; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3953 | if (EVP_PKEY_encrypt(pkey_ctx, tmp, &msglen, pms, pmslen) <= 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3954 | ossl_statem_fatal((s), (80), (406), (274), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3955 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3956 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3957 | 3251 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3958 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3959 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3960 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3961 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3962 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3963 | if (!WPACKET_put_bytes__((pkt), (16 | 0x20), 1)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3964 | || (msglen >= 0x80
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3965 | || !WPACKET_sub_memcpy__((pkt), (tmp), (msglen), 1)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3966 | ossl_statem_fatal((s), (80), (406), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3967 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3968 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3969 | 3259 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3970 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3971 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3972 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3973 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3974 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3975 | EVP_PKEY_CTX_free(pkey_ctx); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3976 | s->s3->tmp.pms = pms; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3977 | s->s3->tmp.pmslen = pmslen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3978 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3979 | return never executed: 1;return 1; never executed: return 1; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3980 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3981 | EVP_PKEY_CTX_free(pkey_ctx); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3982 | CRYPTO_clear_free(pms, pmslen, __FILE__, 3270); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3983 | EVP_MD_CTX_free(ukm_hash); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3984 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3985 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3986 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3987 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3988 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3989 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3990 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3991 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3992 | static int tls_construct_cke_srp(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3993 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3994 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3995 | unsigned char *abytes = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3996 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3997 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
3998 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
3999 | if (s->srp_ctx.A ==
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4000 | ((void *)0)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4001 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4002 | || !WPACKET_sub_allocate_bytes__((pkt), (((BN_num_bits(s->srp_ctx.A)+7)/8)), (&abytes), 2)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4003 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4004 | ossl_statem_fatal((s), (80), (410), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4005 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4006 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4007 | 3289 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4008 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4009 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4010 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4011 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4012 | BN_bn2bin(s->srp_ctx.A, abytes); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4013 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4014 | CRYPTO_free(s->session->srp_username, __FILE__, 3294); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4015 | s->session->srp_username = CRYPTO_strdup(s->srp_ctx.login, __FILE__, 3295); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4016 | if (s->session->srp_username ==
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4017 | ((void *)0)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4018 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4019 | ossl_statem_fatal((s), (80), (410), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4020 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4021 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4022 | 3298 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4023 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4024 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4025 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4026 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4027 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4028 | return executed 10 times by 1 test: 1;return 1; Executed by:
executed 10 times by 1 test: return 1; Executed by:
| 10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4029 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4030 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4031 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4032 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4033 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4034 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4035 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4036 | int tls_construct_client_key_exchange(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4037 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4038 | unsigned long alg_k; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4039 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4040 | alg_k = s->s3->tmp.new_cipher->algorithm_mkey; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4041 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4042 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4043 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4044 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4045 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4046 | if ((
| 29-1397 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4047 | && !tls_construct_cke_psk_preamble(s, pkt)
| 0-29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4048 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4049 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4050 | if (alg_k & (0x00000001U | 0x00000040U)
| 442-984 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4051 | if (!tls_construct_cke_rsa(s, pkt)
| 18-424 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4052 | goto executed 18 times by 1 test: err;goto err; Executed by:
executed 18 times by 1 test: goto err; Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4053 | } executed 424 times by 1 test: else if (alg_k & (0x00000002U | 0x00000100U)end of block Executed by:
| 154-830 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4054 | if (!tls_construct_cke_dhe(s, pkt)
| 15-139 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4055 | goto executed 15 times by 1 test: err;goto err; Executed by:
executed 15 times by 1 test: goto err; Executed by:
| 15 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4056 | } executed 139 times by 1 test: else if (alg_k & (0x00000004U | 0x00000080U)end of block Executed by:
| 37-793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4057 | if (!tls_construct_cke_ecdhe(s, pkt)
| 0-793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4058 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4059 | } executed 793 times by 1 test: else if (alg_k & 0x00000010Uend of block Executed by:
| 0-793 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4060 | if (!tls_construct_cke_gost(s, pkt)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4061 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4062 | } never executed: else if (alg_k & 0x00000020Uend of block
| 0-27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4063 | if (!tls_construct_cke_srp(s, pkt)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4064 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4065 | } executed 10 times by 1 test: else if (!(alg_k & 0x00000008U)end of block Executed by:
| 0-27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4066 | ossl_statem_fatal((s), (80), (488), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4067 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4068 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4069 | 3341 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4070 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4071 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4072 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4073 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4074 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4075 | return executed 1393 times by 1 test: 1;return 1; Executed by:
executed 1393 times by 1 test: return 1; Executed by:
| 1393 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4076 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4077 | CRYPTO_clear_free(s->s3->tmp.pms, s->s3->tmp.pmslen, __FILE__, 3347); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4078 | s->s3->tmp.pms = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4079 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4080 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4081 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4082 | CRYPTO_clear_free(s->s3->tmp.psk, s->s3->tmp.psklen, __FILE__, 3350); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4083 | s->s3->tmp.psk = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4084 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4085 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4086 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4087 | return executed 33 times by 1 test: 0;return 0; Executed by:
executed 33 times by 1 test: return 0; Executed by:
| 33 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4088 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4089 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4090 | int tls_client_key_exchange_post_work(SSL *s) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4091 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4092 | unsigned char *pms = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4093 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4094 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4095 | size_t pmslen = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4096 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4097 | pms = s->s3->tmp.pms; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4098 | pmslen = s->s3->tmp.pmslen; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4099 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4100 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4101 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4102 | if (s->s3->tmp.new_cipher->algorithm_mkey & 0x00000020U
| 10-1383 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4103 | if (!srp_generate_client_master_secret(s)
| 0-10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4104 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4105 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4106 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4107 | return executed 10 times by 1 test: 1;return 1; Executed by:
executed 10 times by 1 test: return 1; Executed by:
| 10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4108 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4109 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4110 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4111 | if (pms ==
| 27-1356 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4112 | ((void *)0)
| 27-1356 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4113 | && !(s->s3->tmp.new_cipher->algorithm_mkey & 0x00000008U)
| 0-27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4114 | ossl_statem_fatal((s), (80), (354), ((1|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4115 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4116 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4117 | 3377 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4118 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4119 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4120 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4121 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4122 | if (!ssl_generate_master_secret(s, pms, pmslen, 1)
| 0-1383 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4123 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4124 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4125 | pms = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4126 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4127 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4128 | pmslen = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4129 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4130 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4131 | pms = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4132 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4133 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4134 | pmslen = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4135 | return executed 1383 times by 1 test: 1;return 1; Executed by:
executed 1383 times by 1 test: return 1; Executed by:
| 1383 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4136 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4137 | CRYPTO_clear_free(pms, pmslen, __FILE__, 3418); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4138 | s->s3->tmp.pms = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4139 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4140 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4141 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4142 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4143 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4144 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4145 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4146 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4147 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4148 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4149 | static int ssl3_check_client_certificate(SSL *s) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4150 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4151 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4152 | if (!tls_choose_sigalg(s, 0)
| 0-83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4153 | ((void *)0)
| 40-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4154 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4155 | return executed 40 times by 1 test: 0;return 0; Executed by:
executed 40 times by 1 test: return 0; Executed by:
| 40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4156 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4157 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4158 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4159 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4160 | if (s->cert->cert_flags & (0x30000|0x00000001U)
| 0-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4161 | !tls1_check_chain(s,
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4162 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4163 | ,
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4164 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4165 | ,
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4166 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4167 | , -2)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4168 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4169 | return executed 43 times by 1 test: 1;return 1; Executed by:
executed 43 times by 1 test: return 1; Executed by:
| 43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4170 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4171 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4172 | WORK_STATE tls_prepare_client_certificate(SSL *s, WORK_STATE wst) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4173 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4174 | X509 *x509 = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4175 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4176 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4177 | EVP_PKEY *pkey = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4178 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4179 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4180 | int i; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4181 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4182 | if (wst == WORK_MORE_A
| 0-83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4183 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4184 | if (s->cert->cert_cb
| 0-83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4185 | i = s->cert->cert_cb(s, s->cert->cert_cb_arg); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4186 | if (i < 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4187 | s->rwstate = 4; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4188 | return never executed: WORK_MORE_A;return WORK_MORE_A; never executed: return WORK_MORE_A; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4189 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4190 | if (i == 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4191 | ossl_statem_fatal((s), (80), (360), (234), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4192 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4193 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4194 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4195 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4196 | 3460 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4197 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4198 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4199 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4200 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4201 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4202 | s->rwstate = 1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4203 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4204 | if (ssl3_check_client_certificate(s)
| 40-43 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4205 | if (s->post_handshake_auth == SSL_PHA_REQUESTED
| 3-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4206 | return executed 3 times by 1 test: WORK_FINISHED_STOP;return WORK_FINISHED_STOP; Executed by:
executed 3 times by 1 test: return WORK_FINISHED_STOP; Executed by:
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4207 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4208 | return executed 40 times by 1 test: WORK_FINISHED_CONTINUE;return WORK_FINISHED_CONTINUE; Executed by:
executed 40 times by 1 test: return WORK_FINISHED_CONTINUE; Executed by:
| 40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4209 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4210 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4211 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4212 | wst = WORK_MORE_B; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4213 | } executed 40 times by 1 test: end of block Executed by:
| 40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4214 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4215 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4216 | if (wst == WORK_MORE_B
| 0-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4217 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4218 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4219 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4220 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4221 | i = ssl_do_client_cert_cb(s, &x509, &pkey); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4222 | if (i < 0
| 0-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4223 | s->rwstate = 4; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4224 | return never executed: WORK_MORE_B;return WORK_MORE_B; never executed: return WORK_MORE_B; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4225 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4226 | s->rwstate = 1; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4227 | if ((
| 0-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4228 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4229 | )
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4230 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4231 | )
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4232 | if (!SSL_use_certificate(s, x509)
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4233 | i = 0; never executed: i = 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4234 | } never executed: else if (i == 1end of block
| 0-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4235 | i = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4236 | ERR_put_error(20,(360),(106),__FILE__,3494) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4237 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4238 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4239 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4240 | X509_free(x509); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4241 | EVP_PKEY_free(pkey); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4242 | if (i
| 0-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4243 | i = 0; never executed: i = 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4244 | if (i == 0
| 0-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4245 | if (s->version == 0x0300
| 0-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4246 | s->s3->tmp.cert_req = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4247 | ssl3_send_alert(s, 1, 41); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4248 | return never executed: WORK_FINISHED_CONTINUE;return WORK_FINISHED_CONTINUE; never executed: return WORK_FINISHED_CONTINUE; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4249 | } else { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4250 | s->s3->tmp.cert_req = 2; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4251 | if (!ssl3_digest_cached_records(s, 0)
| 0-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4252 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4253 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4254 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4255 | } executed 40 times by 1 test: end of block Executed by:
| 40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4256 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4257 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4258 | if (s->post_handshake_auth == SSL_PHA_REQUESTED
| 19-21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4259 | return executed 21 times by 1 test: WORK_FINISHED_STOP;return WORK_FINISHED_STOP; Executed by:
executed 21 times by 1 test: return WORK_FINISHED_STOP; Executed by:
| 21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4260 | return executed 19 times by 1 test: WORK_FINISHED_CONTINUE;return WORK_FINISHED_CONTINUE; Executed by:
executed 19 times by 1 test: return WORK_FINISHED_CONTINUE; Executed by:
| 19 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4261 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4262 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4263 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4264 | ossl_statem_fatal((s), (80), (360), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4265 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4266 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4267 | 3522 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4268 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4269 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4270 | return never executed: WORK_ERROR;return WORK_ERROR; never executed: return WORK_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4271 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4272 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4273 | int tls_construct_client_certificate(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4274 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4275 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-70 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4276 | if (s->pha_context ==
| 20-24 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4277 | ((void *)0)
| 20-24 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4278 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4279 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4280 | if (!WPACKET_put_bytes__((pkt), (0), 1)
| 0-20 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4281 | ossl_statem_fatal((s), (80), (484), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4282 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4283 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4284 | 3533 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4285 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4286 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4287 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4288 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4289 | } executed 20 times by 1 test: else if (!WPACKET_sub_memcpy__((pkt), (s->pha_context), (s->pha_context_len), 1)end of block Executed by:
| 0-24 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4290 | ossl_statem_fatal((s), (80), (484), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4291 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4292 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4293 | 3538 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4294 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4295 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4296 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4297 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4298 | } executed 44 times by 1 test: end of block Executed by:
| 44 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4299 | if (!ssl3_output_cert_chain(s, pkt,
| 0-83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4300 | (s->s3->tmp.cert_req == 2) ?
| 0-83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4301 | ((void *)0)
| 0-83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4302 |
| 0-83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4303 | : s->cert->key)
| 0-83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4304 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4305 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4306 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4307 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4308 | if ((!(s->method->ssl3_enc->enc_flags & 0x8)
| 0-70 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4309 | && ((
| 0-25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4310 | && (
| 0-19 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4311 | 0x080 | (0x010|0x002)))
| 0-19 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4312 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4313 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4314 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4315 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4316 | ossl_statem_fatal((s), (-1), (484), (109), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4317 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4318 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4319 | 3558 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4320 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4321 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4322 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4323 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4324 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4325 | return executed 83 times by 1 test: 1;return 1; Executed by:
executed 83 times by 1 test: return 1; Executed by:
| 83 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4326 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4327 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4328 | int ssl3_check_cert_and_algorithm(SSL *s) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4329 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4330 | const SSL_CERT_LOOKUP *clu; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4331 | size_t idx; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4332 | long alg_k, alg_a; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4333 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4334 | alg_k = s->s3->tmp.new_cipher->algorithm_mkey; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4335 | alg_a = s->s3->tmp.new_cipher->algorithm_auth; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4336 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4337 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4338 | if (!(alg_a & (0x00000001U | 0x00000002U | 0x00000008U | 0x00000020U | 0x00000080U))
| 725-1278 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4339 | return executed 725 times by 1 test: 1;return 1; Executed by:
executed 725 times by 1 test: return 1; Executed by:
| 725 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4340 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4341 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4342 | clu = ssl_cert_lookup_by_pkey(X509_get0_pubkey(s->session->peer), &idx); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4343 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4344 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4345 | if (clu ==
| 0-1278 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4346 | ((void *)0)
| 0-1278 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4347 | || (
| 0-1278 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4348 | ossl_statem_fatal((s), (40), (130), (221), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4349 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4350 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4351 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4352 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4353 | 3585 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4354 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4355 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4356 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4357 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4358 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4359 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4360 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4361 | if (clu->amask & 0x00000008U
| 31-1247 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4362 | if (ssl_check_srvr_ecc_cert_and_alg(s->session->peer, s)
| 0-31 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4363 | return executed 31 times by 1 test: 1;return 1; Executed by:
executed 31 times by 1 test: return 1; Executed by:
| 31 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4364 | ossl_statem_fatal((s), (40), (130), (304), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4365 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4366 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4367 | 3594 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4368 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4369 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4370 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4371 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4372 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4373 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4374 | if (alg_k & (0x00000001U | 0x00000040U)
| 1-804 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4375 | ossl_statem_fatal((s), (40), (130), (169), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4376 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4377 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4378 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4379 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4380 | 3602 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4381 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4382 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4383 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4384 | return executed 1 time by 1 test: 0;return 0; Executed by:
executed 1 time by 1 test: return 0; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4385 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4386 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4387 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4388 | if ((
| 0-1196 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4389 | ((void *)0)
| 0-50 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4390 | )
| 0-50 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4391 | ossl_statem_fatal((s), (80), (130), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4392 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4393 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4394 | 3609 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4395 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4396 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4397 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4398 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4399 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4400 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4401 | return executed 1246 times by 1 test: 1;return 1; Executed by:
executed 1246 times by 1 test: return 1; Executed by:
| 1246 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4402 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4403 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4404 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4405 | int tls_construct_next_proto(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4406 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4407 | size_t len, padding_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4408 | unsigned char *padding = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4409 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4410 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4411 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4412 | len = s->ext.npn_len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4413 | padding_len = 32 - ((len + 2) % 32); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4414 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4415 | if (!WPACKET_sub_memcpy__((pkt), (s->ext.npn), (len), 1)
| 0-21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4416 | || !WPACKET_sub_allocate_bytes__((pkt), (padding_len), (&padding), 1)
| 0-21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4417 | ossl_statem_fatal((s), (80), (426), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4418 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4419 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4420 | 3629 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4421 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4422 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4423 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4424 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4425 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4426 | memset(padding, 0, padding_len); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4427 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4428 | return executed 21 times by 1 test: 1;return 1; Executed by:
executed 21 times by 1 test: return 1; Executed by:
| 21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4429 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4430 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4431 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4432 | MSG_PROCESS_RETURN tls_process_hello_req(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4433 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4434 | if (PACKET_remaining(pkt) > 0
| 0-8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4435 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4436 | ossl_statem_fatal((s), (50), (507), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4437 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4438 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4439 | 3644 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4440 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4441 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4442 | return never executed: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; never executed: return MSG_PROCESS_ERROR; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4443 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4444 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4445 | if ((
| 1-7 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4446 | ssl3_send_alert(s, 1, 100); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4447 | return executed 1 time by 1 test: MSG_PROCESS_FINISHED_READING;return MSG_PROCESS_FINISHED_READING; Executed by:
executed 1 time by 1 test: return MSG_PROCESS_FINISHED_READING; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4448 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4449 | if ((
| 3-4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4450 | SSL_renegotiate(s); executed 3 times by 1 test: SSL_renegotiate(s); Executed by:
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4451 | else | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4452 | SSL_renegotiate_abbreviated(s); executed 4 times by 1 test: SSL_renegotiate_abbreviated(s); Executed by:
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4453 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4454 | return executed 7 times by 1 test: MSG_PROCESS_FINISHED_READING;return MSG_PROCESS_FINISHED_READING; Executed by:
executed 7 times by 1 test: return MSG_PROCESS_FINISHED_READING; Executed by:
| 7 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4455 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4456 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4457 | static MSG_PROCESS_RETURN tls_process_encrypted_extensions(SSL *s, PACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4458 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4459 | PACKET extensions; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4460 | RAW_EXTENSION *rawexts = | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4461 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4462 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4463 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4464 | if (!PACKET_as_length_prefixed_2(pkt, &extensions)
| 0-586 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4465 | || PACKET_remaining(pkt) != 0
| 0-586 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4466 | ossl_statem_fatal((s), (50), (444), (159), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4467 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4468 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4469 | 3676 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4470 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4471 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4472 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4473 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4474 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4475 | if (!tls_collect_extensions(s, &extensions,
| 1-585 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4476 | 0x0400, &rawexts,
| 1-585 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4477 |
| 1-585 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4478 | ((void *)0)
| 1-585 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4479 | , 1)
| 1-585 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4480 | || !tls_parse_all_extensions(s, 0x0400,
| 1-584 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4481 | rawexts,
| 1-584 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4482 | ((void *)0)
| 1-584 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4483 | , 0, 1)
| 1-584 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4484 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4485 | goto executed 2 times by 1 test: err;goto err; Executed by:
executed 2 times by 1 test: goto err; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4486 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4487 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4488 | CRYPTO_free(rawexts, __FILE__, 3689); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4489 | return executed 584 times by 1 test: MSG_PROCESS_CONTINUE_READING;return MSG_PROCESS_CONTINUE_READING; Executed by:
executed 584 times by 1 test: return MSG_PROCESS_CONTINUE_READING; Executed by:
| 584 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4490 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4491 | err: | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4492 | CRYPTO_free(rawexts, __FILE__, 3693); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4493 | return executed 2 times by 1 test: MSG_PROCESS_ERROR;return MSG_PROCESS_ERROR; Executed by:
executed 2 times by 1 test: return MSG_PROCESS_ERROR; Executed by:
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4494 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4495 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4496 | int ssl_do_client_cert_cb(SSL *s, X509 **px509, EVP_PKEY **ppkey) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4497 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4498 | int i = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4499 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4500 | if (s->ctx->client_cert_engine
| 0-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4501 | i = ENGINE_load_ssl_client_cert(s->ctx->client_cert_engine, s, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4502 | SSL_get_client_CA_list(s), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4503 | px509, ppkey, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4504 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4505 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4506 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4507 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4508 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4509 | ); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4510 | if (i != 0
| 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4511 | return never executed: i;return i; never executed: return i; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4512 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4513 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4514 | if (s->ctx->client_cert_cb
| 0-40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4515 | i = s->ctx->client_cert_cb(s, px509, ppkey); never executed: i = s->ctx->client_cert_cb(s, px509, ppkey); | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4516 | return executed 40 times by 1 test: i;return i; Executed by:
executed 40 times by 1 test: return i; Executed by:
| 40 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4517 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4518 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4519 | int ssl_cipher_list_to_bytes(SSL *s, struct stack_st_SSL_CIPHER *sk, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4520 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4521 | int i; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4522 | size_t totlen = 0, len, maxlen, maxverok = 0; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4523 | int empty_reneg_info_scsv = !s->renegotiate; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4524 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4525 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4526 | if (!ssl_set_client_disabled(s)
| 0-4940 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4527 | ossl_statem_fatal((s), (80), (425), (191), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4528 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4529 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4530 | 3723 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4531 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4532 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4533 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4534 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4535 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4536 | if (sk ==
| 0-4940 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4537 | ((void *)0)
| 0-4940 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4538 | ) { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4539 | ossl_statem_fatal((s), (80), (425), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4540 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4541 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4542 | 3729 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4543 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4544 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4545 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4546 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4547 | maxlen = 0xfffe; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4548 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4549 | if (empty_reneg_info_scsv
| 24-4916 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4550 | maxlen -= 2; executed 4916 times by 1 test: maxlen -= 2; Executed by:
| 4916 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4551 | if (s->mode & 0x00000080U
| 1-4939 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4552 | maxlen -= 2; executed 1 time by 1 test: maxlen -= 2; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4553 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4554 | for (i = 0; i < sk_SSL_CIPHER_num(sk)
| 0-587346 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4555 | const SSL_CIPHER *c; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4556 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4557 | c = sk_SSL_CIPHER_value(sk, i); | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4558 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4559 | if (ssl_cipher_disabled(s, c, (1 | (1 << 16)), 0)
| 258263-329083 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4560 | continue; executed 258263 times by 1 test: continue; Executed by:
| 258263 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4561 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4562 | if (!s->method->put_cipher_by_char(c, pkt, &len)
| 0-329083 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4563 | ossl_statem_fatal((s), (80), (425), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4564 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4565 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4566 | 3764 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4567 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4568 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4569 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4570 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4571 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4572 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4573 | if (!maxverok
| 4940-324143 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4574 | if ((
| 192-4748 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4575 | if (((((
| 0-192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4576 | && ((((
| 0-192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4577 | maxverok = 1; executed 192 times by 1 test: maxverok = 1; Executed by:
| 192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4578 | } executed 192 times by 1 test: else {end of block Executed by:
| 192 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4579 | if (c->max_tls >= s->s3->tmp.max_ver
| 1-4747 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4580 | && c->min_tls <= s->s3->tmp.max_ver
| 0-4747 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4581 | maxverok = 1; executed 4747 times by 1 test: maxverok = 1; Executed by:
| 4747 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4582 | } executed 4748 times by 1 test: end of block Executed by:
| 4748 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4583 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4584 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4585 | totlen += len; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4586 | } executed 329083 times by 1 test: end of block Executed by:
| 329083 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4587 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4588 | if (totlen == 0
| 0-4940 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4589 | ossl_statem_fatal((s), (80), (425), (181), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4590 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4591 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4592 | 3786 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4593 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4594 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4595 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4596 | if (!maxverok
| 0-1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4597 | ERR_add_error_data(1, "No ciphers enabled for max supported " executed 1 time by 1 test: ERR_add_error_data(1, "No ciphers enabled for max supported " "SSL/TLS version"); Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4598 | "SSL/TLS version"); executed 1 time by 1 test: ERR_add_error_data(1, "No ciphers enabled for max supported " "SSL/TLS version"); Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4599 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4600 | return executed 1 time by 1 test: 0;return 0; Executed by:
executed 1 time by 1 test: return 0; Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4601 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4602 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4603 | if (totlen != 0
| 0-4939 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4604 | if (empty_reneg_info_scsv
| 24-4915 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4605 | static SSL_CIPHER scsv = { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4606 | 0, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4607 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4608 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4609 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4610 | , 0x030000FF, 0, 0, 0, 0, 0, 0, 0, 0, 0 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4611 | }; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4612 | if (!s->method->put_cipher_by_char(&scsv, pkt, &len)
| 0-4915 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4613 | ossl_statem_fatal((s), (80), (425), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4614 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4615 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4616 | 3802 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4617 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4618 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4619 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4620 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4621 | } executed 4915 times by 1 test: end of block Executed by:
| 4915 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4622 | if (s->mode & 0x00000080U
| 1-4938 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4623 | static SSL_CIPHER scsv = { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4624 | 0, | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4625 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4626 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4627 | ((void *)0) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4628 | , 0x03005600, 0, 0, 0, 0, 0, 0, 0, 0, 0 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4629 | }; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4630 | if (!s->method->put_cipher_by_char(&scsv, pkt, &len)
| 0-1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4631 | ossl_statem_fatal((s), (80), (425), ((4|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4632 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4633 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4634 | 3812 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4635 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4636 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4637 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4638 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4639 | } executed 1 time by 1 test: end of block Executed by:
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4640 | } executed 4939 times by 1 test: end of block Executed by:
| 4939 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4641 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4642 | return executed 4939 times by 1 test: 1;return 1; Executed by:
executed 4939 times by 1 test: return 1; Executed by:
| 4939 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4643 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4644 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4645 | int tls_construct_end_of_early_data(SSL *s, WPACKET *pkt) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4646 | { | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4647 | if (s->early_data_state != SSL_EARLY_DATA_WRITE_RETRY
| 0-18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4648 | && s->early_data_state != SSL_EARLY_DATA_FINISHED_WRITING
| 0-18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4649 | ossl_statem_fatal((s), (80), (536), ((2|64)), | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4650 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4651 | __FILE__ | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4652 | , | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4653 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4654 | 3827 | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4655 | ) | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4656 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4657 | ; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4658 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4659 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4660 | - | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
4661 | s->early_data_state = SSL_EARLY_DATA_FINISHED_WRITING; | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4662 | return executed 18 times by 1 test: 1;return 1; Executed by:
executed 18 times by 1 test: return 1; Executed by:
| 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
4663 | } | - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Switch to Source code | Preprocessed file |