├── .gitignore ├── .gitmodules ├── 1.1.0-beta1.log ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── README.md └── ossl-shim.patch /.gitignore: -------------------------------------------------------------------------------- 1 | ossl_shim 2 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "openssl"] 2 | path = openssl 3 | url = https://github.com/openssl/openssl.git 4 | ignore = dirty 5 | [submodule "boringssl"] 6 | path = boringssl 7 | url = https://github.com/google/boringssl.git 8 | ignore = dirty -------------------------------------------------------------------------------- /1.1.0-beta1.log: -------------------------------------------------------------------------------- 1 | cd boringssl/ssl/test/runner && \ 2 | go test -shim-path ../../../../ossl_shim -pipe 3 | PASSED (NoFallbackSCSV) 4 | PASSED (BadECDSACurve) 5 | PASSED (BadECDSASignature-ClientAuth) 6 | PASSED (BadECDSASignature) 7 | PASSED (BadRSASignature) 8 | PASSED (SkipCertificateStatus) 9 | PASSED (NoClientCertificate) 10 | PASSED (SendFallbackSCSV) 11 | PASSED (ClientCertificateTypes) 12 | PASSED (SkipServerKeyExchange) 13 | PASSED (BadRSASignature-ClientAuth) 14 | PASSED (UnauthenticatedECDH) 15 | PASSED (SkipChangeCipherSpec-Server) 16 | PASSED (SkipChangeCipherSpec-Client) 17 | PASSED (Alert) 18 | PASSED (FragmentAcrossChangeCipherSpec-Server) 19 | PASSED (Alert-DTLS) 20 | PASSED (SkipChangeCipherSpec-Server-NPN) 21 | PASSED (FragmentAcrossChangeCipherSpec-Server-NPN) 22 | FAILED (FragmentAlert-DTLS) 23 | unexpected success: local error 'none', child error 'none', stdout: 24 | 25 | stderr: 26 | 27 | PASSED (FragmentAlert) 28 | PASSED (FragmentAcrossChangeCipherSpec-Client) 29 | PASSED (EarlyChangeCipherSpec-server-1) 30 | PASSED (FallbackSCSV) 31 | PASSED (HttpGET) 32 | PASSED (VersionTooLow) 33 | PASSED (FallbackSCSV-VersionMatch) 34 | PASSED (EarlyChangeCipherSpec-server-2) 35 | PASSED (HttpPUT) 36 | FAILED (SkipNewSessionTicket) 37 | bad error (wanted ':UNEXPECTED_RECORD:' / ''): local error 'EOF', child error 'exit status 1', stdout: 38 | 39 | stderr: 40 | new session was not cached, but we expected the opposite 41 | 42 | PASSED (HttpHEAD) 43 | PASSED (HttpPOST) 44 | PASSED (MajorVersionTolerance) 45 | PASSED (MinorVersionTolerance) 46 | PASSED (DisableEverything-DTLS) 47 | PASSED (SkipCipherVersionCheck) 48 | PASSED (Garbage) 49 | PASSED (HttpCONNECT) 50 | PASSED (DisableEverything) 51 | PASSED (NoSharedCipher) 52 | PASSED (MTUExceeded) 53 | FAILED (MTU) 54 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 55 | 56 | stderr: 57 | 58 | PASSED (FragmentedClientVersion) 59 | PASSED (CertMismatchRSA) 60 | FAILED (DTLSIgnoreBadPackets-Async) 61 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 62 | 63 | stderr: 64 | 65 | FAILED (AppDataBeforeHandshake-DTLS) 66 | bad error (wanted ':UNEXPECTED_RECORD:' / ''): local error 'EOF', child error 'exit status 1', stdout: 67 | 68 | stderr: 69 | 70 | PASSED (AppDataBeforeHandshake) 71 | PASSED (EmptyCertificateList) 72 | PASSED (CertMismatchECDSA) 73 | PASSED (TLSFatalBadPackets) 74 | PASSED (DTLSIgnoreBadPackets) 75 | FAILED (AppDataBeforeHandshake-Empty) 76 | unexpected success: local error 'none', child error 'none', stdout: 77 | 78 | stderr: 79 | 80 | FAILED (AppDataBeforeHandshake-DTLS-Empty) 81 | unexpected success: local error 'none', child error 'none', stdout: 82 | 83 | stderr: 84 | 85 | FAILED (AppDataAfterChangeCipherSpec-Empty) 86 | unexpected success: local error 'none', child error 'none', stdout: 87 | 88 | stderr: 89 | 90 | PASSED (AppDataAfterChangeCipherSpec) 91 | FAILED (AlertAfterChangeCipherSpec-DTLS) 92 | bad error (wanted ':TLSV1_ALERT_RECORD_OVERFLOW:' / ''): local error 'tls: simulating post-CCS alert', child error 'exit status 1', stdout: 93 | 94 | stderr: 95 | 96 | FAILED (AppDataAfterChangeCipherSpec-DTLS) 97 | unexpected failure: local error 'bad reply; length mismatch (12 vs 32)', child error 'none', stdout: 98 | 99 | stderr: 100 | 101 | PASSED (SendInvalidRecordType-DTLS) 102 | PASSED (SendInvalidRecordType) 103 | PASSED (FalseStart-SkipServerSecondLeg) 104 | PASSED (AlertAfterChangeCipherSpec) 105 | PASSED (AppDataAfterChangeCipherSpec-DTLS-Empty) 106 | PASSED (FalseStart-SkipServerSecondLeg-Implicit) 107 | PASSED (ReorderHandshakeFragments-Large-DTLS) 108 | FAILED (FragmentMessageLengthMismatch-DTLS) 109 | bad error (wanted ':FRAGMENT_MISMATCH:' / ''): local error 'EOF', child error 'exit status 1', stdout: 110 | 111 | stderr: 112 | 113 | PASSED (SplitFragments-Body-DTLS) 114 | PASSED (WrongMessageType) 115 | PASSED (SplitFragments-Header-DTLS) 116 | PASSED (SplitFragments-Boundary-DTLS) 117 | PASSED (WrongMessageType-DTLS) 118 | FAILED (FailEarlyCallback) 119 | unexpected success: local error 'none', child error 'none', stdout: 120 | 121 | stderr: 122 | 123 | FAILED (SendEmptyFragments-DTLS) 124 | unexpected failure: local error 'remote error: error decoding message', child error 'exit status 1', stdout: 125 | 126 | stderr: 127 | 47412520881600:error:1418209F:SSL routines:dtls_process_hello_verify:length mismatch:ssl/statem/statem_clnt.c:995: 128 | 129 | PASSED (UnsupportedCipherSuite) 130 | PASSED (RSAEphemeralKey) 131 | PASSED (NoFalseStart-NoALPN) 132 | PASSED (NoFalseStart-NoAEAD) 133 | PASSED (NoFalseStart-RSA) 134 | PASSED (BadFinished-Server) 135 | PASSED (UnsupportedCurve) 136 | PASSED (FalseStart-BadFinished) 137 | PASSED (ReorderHandshakeFragments-Small-DTLS) 138 | FAILED (FragmentMessageTypeMismatch-DTLS) 139 | unexpected success: local error 'none', child error 'none', stdout: 140 | 141 | stderr: 142 | 143 | PASSED (NoFalseStart-DHE_RSA) 144 | PASSED (BadFinished-Client) 145 | FAILED (NoSupportedCurves) 146 | unexpected success: local error 'none', child error 'none', stdout: 147 | 148 | stderr: 149 | 150 | FAILED (SendSplitAlert-Async) 151 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 152 | 153 | stderr: 154 | 155 | PASSED (SendSplitAlert-Sync) 156 | PASSED (NoRC4-DTLS) 157 | PASSED (SendWarningAlerts-Pass) 158 | FAILED (SendEmptyRecords-Async) 159 | unexpected success: local error 'none', child error 'none', stdout: 160 | 161 | stderr: 162 | 163 | PASSED (SendEmptyRecords-Pass) 164 | PASSED (SendWarningAlerts-DTLS-Pass) 165 | PASSED (SendEmptyRecords) 166 | PASSED (PackDTLSHandshake) 167 | FAILED (SendWarningAlerts-Async) 168 | unexpected success: local error 'none', child error 'none', stdout: 169 | 170 | stderr: 171 | 172 | FAILED (SendWarningAlerts) 173 | unexpected success: local error 'none', child error 'none', stdout: 174 | 175 | stderr: 176 | 177 | PASSED (Unclean-Shutdown-Ignored) 178 | PASSED (EmptySessionID) 179 | FAILED (Unclean-Shutdown) 180 | bad error (wanted 'Unexpected SSL_shutdown result: -1 != 1' / ''): local error 'none', child error 'exit status 1', stdout: 181 | 182 | stderr: 183 | Unexpected SSL_shutdown result: -1 != 1 184 | 185 | PASSED (LargePlaintext) 186 | PASSED (NoCommonCurves) 187 | PASSED (BadChangeCipherSpec-2) 188 | FAILED (BadChangeCipherSpec-1) 189 | unexpected success: local error 'none', child error 'none', stdout: 190 | 191 | stderr: 192 | 193 | PASSED (LargePlaintext-DTLS) 194 | PASSED (LargeCiphertext) 195 | PASSED (SendEmptySessionTicket) 196 | PASSED (BadChangeCipherSpec-DTLS-2) 197 | PASSED (BadHelloRequest-1) 198 | PASSED (BadChangeCipherSpec-DTLS-1) 199 | PASSED (InvalidECDHPoint-Client) 200 | FAILED (SSL3-3DES-SHA-client) 201 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 202 | 203 | stderr: 204 | 47042165374400:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 205 | 206 | FAILED (SSL3-3DES-SHA-server) 207 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 208 | 209 | stderr: 210 | 47647262039488:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 211 | 212 | PASSED (InvalidECDHPoint-Server) 213 | PASSED (BadHelloRequest-2) 214 | PASSED (LargeCiphertext-DTLS) 215 | PASSED (SupportTicketsWithSessionID) 216 | PASSED (TLS1-3DES-SHA-server) 217 | PASSED (TLS1-3DES-SHA-client) 218 | PASSED (CheckLeafCurve) 219 | FAILED (DTLS1-3DES-SHA-server) 220 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 221 | 222 | stderr: 223 | session was not reused 224 | 225 | PASSED (TLS11-3DES-SHA-client) 226 | PASSED (TLS12-3DES-SHA-client) 227 | PASSED (DTLS1-3DES-SHA-client) 228 | PASSED (TLS12-3DES-SHA-server) 229 | PASSED (TLS11-3DES-SHA-server) 230 | PASSED (AES128-GCM-LargeRecord) 231 | PASSED (DTLS12-3DES-SHA-client) 232 | PASSED (TLS12-AES128-GCM-server) 233 | PASSED (TLS12-AES128-GCM-client) 234 | FAILED (SSL3-AES128-SHA-client) 235 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 236 | 237 | stderr: 238 | 47762561846720:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 239 | 240 | PASSED (DTLS12-3DES-SHA-server) 241 | PASSED (DTLS12-AES128-GCM-client) 242 | FAILED (SSL3-AES128-SHA-server) 243 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 244 | 245 | stderr: 246 | 47172619320768:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 247 | 248 | PASSED (AES128-GCM-LargeRecord-DTLS) 249 | PASSED (3DES-SHA-LargeRecord) 250 | PASSED (DTLS12-AES128-GCM-server) 251 | PASSED (3DES-SHA-LargeRecord-DTLS) 252 | PASSED (TLS11-AES128-SHA-server) 253 | PASSED (TLS1-AES128-SHA-server) 254 | FAILED (DTLS1-AES128-SHA-server) 255 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 256 | 257 | stderr: 258 | session was not reused 259 | 260 | PASSED (TLS1-AES128-SHA-client) 261 | PASSED (TLS12-AES128-SHA-server) 262 | PASSED (DTLS1-AES128-SHA-client) 263 | PASSED (TLS11-AES128-SHA-client) 264 | PASSED (AES128-SHA-LargeRecord) 265 | PASSED (TLS12-AES128-SHA-client) 266 | PASSED (DTLS12-AES128-SHA-client) 267 | PASSED (TLS12-AES128-SHA256-server) 268 | PASSED (AES128-SHA-LargeRecord-DTLS) 269 | PASSED (DTLS12-AES128-SHA-server) 270 | PASSED (TLS12-AES128-SHA256-client) 271 | PASSED (DTLS12-AES128-SHA256-server) 272 | PASSED (AES128-SHA256-LargeRecord) 273 | PASSED (DTLS12-AES128-SHA256-client) 274 | PASSED (AES128-SHA256-LargeRecord-DTLS) 275 | PASSED (TLS12-AES256-GCM-server) 276 | FAILED (SSL3-AES256-SHA-client) 277 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 278 | 279 | stderr: 280 | 47844211543488:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 281 | 282 | FAILED (SSL3-AES256-SHA-server) 283 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 284 | 285 | stderr: 286 | 47615929363904:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 287 | 288 | PASSED (AES256-GCM-LargeRecord) 289 | PASSED (TLS12-AES256-GCM-client) 290 | PASSED (TLS1-AES256-SHA-server) 291 | PASSED (AES256-GCM-LargeRecord-DTLS) 292 | PASSED (DTLS12-AES256-GCM-server) 293 | PASSED (DTLS12-AES256-GCM-client) 294 | PASSED (TLS11-AES256-SHA-client) 295 | PASSED (TLS12-AES256-SHA-client) 296 | FAILED (DTLS1-AES256-SHA-server) 297 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 298 | 299 | stderr: 300 | session was not reused 301 | 302 | PASSED (DTLS1-AES256-SHA-client) 303 | PASSED (TLS11-AES256-SHA-server) 304 | PASSED (AES256-SHA-LargeRecord) 305 | PASSED (DTLS12-AES256-SHA-server) 306 | PASSED (TLS12-AES256-SHA-server) 307 | PASSED (TLS1-AES256-SHA-client) 308 | PASSED (AES256-SHA-LargeRecord-DTLS) 309 | PASSED (DTLS12-AES256-SHA-client) 310 | PASSED (TLS12-AES256-SHA256-server) 311 | PASSED (AES256-SHA256-LargeRecord) 312 | PASSED (TLS12-AES256-SHA256-client) 313 | FAILED (SSL3-DHE-RSA-AES128-SHA-client) 314 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 315 | 316 | stderr: 317 | 47784083348928:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 318 | 319 | FAILED (SSL3-DHE-RSA-AES128-SHA-server) 320 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 321 | 322 | stderr: 323 | 47808799722944:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 324 | 325 | PASSED (DTLS12-AES256-SHA256-client) 326 | PASSED (AES256-SHA256-LargeRecord-DTLS) 327 | PASSED (TLS12-DHE-RSA-AES128-GCM-client) 328 | PASSED (DTLS12-AES256-SHA256-server) 329 | PASSED (DTLS12-DHE-RSA-AES128-GCM-server) 330 | PASSED (TLS12-DHE-RSA-AES128-GCM-server) 331 | PASSED (DTLS12-DHE-RSA-AES128-GCM-client) 332 | PASSED (DHE-RSA-AES128-GCM-LargeRecord) 333 | PASSED (TLS1-DHE-RSA-AES128-SHA-client) 334 | PASSED (TLS11-DHE-RSA-AES128-SHA-client) 335 | PASSED (TLS1-DHE-RSA-AES128-SHA-server) 336 | PASSED (DHE-RSA-AES128-GCM-LargeRecord-DTLS) 337 | PASSED (DTLS1-DHE-RSA-AES128-SHA-client) 338 | PASSED (TLS12-DHE-RSA-AES128-SHA-client) 339 | PASSED (DHE-RSA-AES128-SHA-LargeRecord) 340 | PASSED (TLS11-DHE-RSA-AES128-SHA-server) 341 | PASSED (DTLS12-DHE-RSA-AES128-SHA-client) 342 | PASSED (DHE-RSA-AES128-SHA-LargeRecord-DTLS) 343 | PASSED (TLS12-DHE-RSA-AES128-SHA-server) 344 | PASSED (TLS12-DHE-RSA-AES128-SHA256-client) 345 | PASSED (DHE-RSA-AES128-SHA256-LargeRecord) 346 | PASSED (DTLS12-DHE-RSA-AES128-SHA256-client) 347 | PASSED (DHE-RSA-AES128-SHA256-LargeRecord-DTLS) 348 | PASSED (TLS12-DHE-RSA-AES128-SHA256-server) 349 | PASSED (DTLS12-DHE-RSA-AES128-SHA-server) 350 | PASSED (DTLS12-DHE-RSA-AES128-SHA256-server) 351 | PASSED (TLS12-DHE-RSA-AES256-GCM-client) 352 | FAILED (SSL3-DHE-RSA-AES256-SHA-client) 353 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 354 | 355 | stderr: 356 | 47895388552640:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 357 | 358 | FAILED (SSL3-DHE-RSA-AES256-SHA-server) 359 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 360 | 361 | stderr: 362 | 47971307552192:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 363 | 364 | PASSED (DHE-RSA-AES256-GCM-LargeRecord) 365 | PASSED (DTLS12-DHE-RSA-AES256-GCM-client) 366 | PASSED (TLS12-DHE-RSA-AES256-GCM-server) 367 | PASSED (DTLS1-DHE-RSA-AES256-SHA-client) 368 | FAILED (DTLS1-DHE-RSA-AES128-SHA-server) 369 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 370 | 371 | stderr: 372 | session was not reused 373 | 374 | PASSED (TLS1-DHE-RSA-AES256-SHA-client) 375 | PASSED (DHE-RSA-AES256-GCM-LargeRecord-DTLS) 376 | PASSED (TLS1-DHE-RSA-AES256-SHA-server) 377 | PASSED (DTLS12-DHE-RSA-AES256-GCM-server) 378 | PASSED (DTLS12-DHE-RSA-AES256-SHA-client) 379 | PASSED (DHE-RSA-AES256-SHA-LargeRecord) 380 | PASSED (TLS12-DHE-RSA-AES256-SHA-client) 381 | PASSED (DTLS12-DHE-RSA-AES256-SHA-server) 382 | PASSED (DHE-RSA-AES256-SHA-LargeRecord-DTLS) 383 | PASSED (TLS11-DHE-RSA-AES256-SHA-server) 384 | PASSED (DTLS12-DHE-RSA-AES256-SHA256-client) 385 | PASSED (TLS12-DHE-RSA-AES256-SHA-server) 386 | PASSED (TLS11-DHE-RSA-AES256-SHA-client) 387 | PASSED (TLS12-ECDHE-ECDSA-AES128-GCM-client) 388 | PASSED (TLS12-ECDHE-ECDSA-AES128-GCM-server) 389 | PASSED (TLS12-DHE-RSA-AES256-SHA256-client) 390 | PASSED (SSL3-ECDHE-ECDSA-AES128-SHA-server) 391 | PASSED (TLS12-DHE-RSA-AES256-SHA256-server) 392 | PASSED (DTLS12-ECDHE-ECDSA-AES128-GCM-server) 393 | PASSED (DTLS12-ECDHE-ECDSA-AES128-GCM-client) 394 | PASSED (ECDHE-ECDSA-AES128-GCM-LargeRecord) 395 | PASSED (TLS1-ECDHE-ECDSA-AES128-SHA-server) 396 | PASSED (DHE-RSA-AES256-SHA256-LargeRecord-DTLS) 397 | PASSED (ECDHE-ECDSA-AES128-GCM-LargeRecord-DTLS) 398 | PASSED (DHE-RSA-AES256-SHA256-LargeRecord) 399 | PASSED (DTLS12-DHE-RSA-AES256-SHA256-server) 400 | FAILED (DTLS1-DHE-RSA-AES256-SHA-server) 401 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 402 | 403 | stderr: 404 | session was not reused 405 | 406 | PASSED (TLS1-ECDHE-ECDSA-AES128-SHA-client) 407 | PASSED (DTLS1-ECDHE-ECDSA-AES128-SHA-client) 408 | PASSED (TLS11-ECDHE-ECDSA-AES128-SHA-server) 409 | PASSED (TLS11-ECDHE-ECDSA-AES128-SHA-client) 410 | PASSED (TLS12-ECDHE-ECDSA-AES128-SHA-client) 411 | PASSED (DTLS12-ECDHE-ECDSA-AES128-SHA-client) 412 | FAILED (DTLS1-ECDHE-ECDSA-AES128-SHA-server) 413 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 414 | 415 | stderr: 416 | session was not reused 417 | 418 | PASSED (ECDHE-ECDSA-AES128-SHA-LargeRecord) 419 | PASSED (ECDHE-ECDSA-AES128-SHA-LargeRecord-DTLS) 420 | PASSED (TLS12-ECDHE-ECDSA-AES128-SHA-server) 421 | PASSED (DTLS12-ECDHE-ECDSA-AES128-SHA-server) 422 | PASSED (TLS12-ECDHE-ECDSA-AES128-SHA256-server) 423 | PASSED (TLS12-ECDHE-ECDSA-AES128-SHA256-client) 424 | PASSED (TLS12-ECDHE-ECDSA-AES256-GCM-client) 425 | PASSED (ECDHE-ECDSA-AES128-SHA256-LargeRecord) 426 | PASSED (ECDHE-ECDSA-AES128-SHA256-LargeRecord-DTLS) 427 | PASSED (TLS12-ECDHE-ECDSA-AES256-GCM-server) 428 | PASSED (SSL3-ECDHE-ECDSA-AES256-SHA-server) 429 | PASSED (ECDHE-ECDSA-AES256-GCM-LargeRecord) 430 | PASSED (DTLS12-ECDHE-ECDSA-AES128-SHA256-server) 431 | PASSED (DTLS12-ECDHE-ECDSA-AES256-GCM-client) 432 | PASSED (DTLS12-ECDHE-ECDSA-AES128-SHA256-client) 433 | PASSED (ECDHE-ECDSA-AES256-GCM-LargeRecord-DTLS) 434 | PASSED (DTLS12-ECDHE-ECDSA-AES256-GCM-server) 435 | PASSED (TLS12-ECDHE-ECDSA-AES256-SHA-server) 436 | PASSED (TLS1-ECDHE-ECDSA-AES256-SHA-server) 437 | PASSED (TLS11-ECDHE-ECDSA-AES256-SHA-client) 438 | PASSED (DTLS1-ECDHE-ECDSA-AES256-SHA-client) 439 | PASSED (DTLS12-ECDHE-ECDSA-AES256-SHA-client) 440 | PASSED (TLS1-ECDHE-ECDSA-AES256-SHA-client) 441 | PASSED (TLS12-ECDHE-ECDSA-AES256-SHA-client) 442 | FAILED (DTLS1-ECDHE-ECDSA-AES256-SHA-server) 443 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 444 | 445 | stderr: 446 | session was not reused 447 | 448 | PASSED (DTLS12-ECDHE-ECDSA-AES256-SHA-server) 449 | PASSED (TLS12-ECDHE-ECDSA-AES256-SHA384-server) 450 | PASSED (ECDHE-ECDSA-AES256-SHA-LargeRecord-DTLS) 451 | PASSED (TLS11-ECDHE-ECDSA-AES256-SHA-server) 452 | PASSED (ECDHE-ECDSA-AES256-SHA-LargeRecord) 453 | PASSED (ECDHE-ECDSA-AES256-SHA384-LargeRecord-DTLS) 454 | PASSED (DTLS12-ECDHE-ECDSA-AES256-SHA384-client) 455 | PASSED (TLS12-ECDHE-ECDSA-CHACHA20-POLY1305-server) 456 | PASSED (TLS12-ECDHE-ECDSA-AES256-SHA384-client) 457 | PASSED (ECDHE-ECDSA-AES256-SHA384-LargeRecord) 458 | FAILED (TLS12-ECDHE-ECDSA-CHACHA20-POLY1305-OLD-server) 459 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 460 | 461 | stderr: 462 | 47873634852288:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 463 | 464 | PASSED (DTLS12-ECDHE-ECDSA-AES256-SHA384-server) 465 | FAILED (TLS12-ECDHE-ECDSA-CHACHA20-POLY1305-OLD-client) 466 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 467 | 468 | stderr: 469 | 47783402692032:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 470 | 471 | PASSED (TLS12-ECDHE-ECDSA-CHACHA20-POLY1305-client) 472 | FAILED (TLS1-ECDHE-ECDSA-RC4-SHA-server) 473 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 474 | 475 | stderr: 476 | 47348025580992:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 477 | 478 | PASSED (ECDHE-ECDSA-CHACHA20-POLY1305-LargeRecord) 479 | FAILED (DTLS12-ECDHE-ECDSA-CHACHA20-POLY1305-OLD-server) 480 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 481 | 482 | stderr: 483 | 47099068554688:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 484 | 485 | PASSED (DTLS12-ECDHE-ECDSA-CHACHA20-POLY1305-client) 486 | FAILED (ECDHE-ECDSA-CHACHA20-POLY1305-OLD-LargeRecord) 487 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 488 | 489 | stderr: 490 | 47705669696960:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 491 | 492 | PASSED (ECDHE-ECDSA-CHACHA20-POLY1305-LargeRecord-DTLS) 493 | PASSED (DTLS12-ECDHE-ECDSA-CHACHA20-POLY1305-server) 494 | PASSED (SSL3-ECDHE-ECDSA-RC4-SHA-server) 495 | FAILED (DTLS12-ECDHE-ECDSA-CHACHA20-POLY1305-OLD-client) 496 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 497 | 498 | stderr: 499 | 47070197460416:error:14102410:SSL routines:dtls1_read_bytes:reason(1040):ssl/record/rec_layer_d1.c:844:SSL alert number 40 500 | 501 | FAILED (TLS1-ECDHE-ECDSA-RC4-SHA-client) 502 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 503 | 504 | stderr: 505 | 47101371248064:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 506 | 507 | FAILED (ECDHE-ECDSA-CHACHA20-POLY1305-OLD-LargeRecord-DTLS) 508 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 509 | 510 | stderr: 511 | 47342411013568:error:14102410:SSL routines:dtls1_read_bytes:reason(1040):ssl/record/rec_layer_d1.c:844:SSL alert number 40 512 | 513 | FAILED (ECDHE-ECDSA-RC4-SHA-LargeRecord) 514 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 515 | 516 | stderr: 517 | 47121466580416:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 518 | 519 | FAILED (TLS11-ECDHE-ECDSA-RC4-SHA-server) 520 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 521 | 522 | stderr: 523 | 47646784294336:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 524 | 525 | FAILED (TLS11-ECDHE-ECDSA-RC4-SHA-client) 526 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 527 | 528 | stderr: 529 | 47641467985344:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 530 | 531 | FAILED (TLS12-ECDHE-ECDSA-RC4-SHA-server) 532 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 533 | 534 | stderr: 535 | 47641963625920:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 536 | 537 | FAILED (TLS12-ECDHE-ECDSA-RC4-SHA-client) 538 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 539 | 540 | stderr: 541 | 47853073497536:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 542 | 543 | PASSED (SSL3-ECDHE-RSA-AES128-SHA-server) 544 | PASSED (TLS12-ECDHE-RSA-AES128-GCM-server) 545 | PASSED (DTLS12-ECDHE-RSA-AES128-GCM-client) 546 | PASSED (ECDHE-RSA-AES128-GCM-LargeRecord-DTLS) 547 | PASSED (DTLS12-ECDHE-RSA-AES128-GCM-server) 548 | PASSED (ECDHE-RSA-AES128-GCM-LargeRecord) 549 | PASSED (TLS12-ECDHE-RSA-AES128-GCM-client) 550 | PASSED (TLS1-ECDHE-RSA-AES128-SHA-server) 551 | PASSED (TLS1-ECDHE-RSA-AES128-SHA-client) 552 | PASSED (DTLS1-ECDHE-RSA-AES128-SHA-client) 553 | FAILED (DTLS1-ECDHE-RSA-AES128-SHA-server) 554 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 555 | 556 | stderr: 557 | session was not reused 558 | 559 | PASSED (TLS11-ECDHE-RSA-AES128-SHA-client) 560 | PASSED (TLS12-ECDHE-RSA-AES128-SHA-server) 561 | PASSED (TLS11-ECDHE-RSA-AES128-SHA-server) 562 | PASSED (TLS12-ECDHE-RSA-AES128-SHA256-server) 563 | PASSED (DTLS12-ECDHE-RSA-AES128-SHA-client) 564 | PASSED (ECDHE-RSA-AES128-SHA-LargeRecord-DTLS) 565 | PASSED (DTLS12-ECDHE-RSA-AES128-SHA-server) 566 | PASSED (TLS12-ECDHE-RSA-AES128-SHA256-client) 567 | PASSED (ECDHE-RSA-AES128-SHA-LargeRecord) 568 | PASSED (TLS12-ECDHE-RSA-AES128-SHA-client) 569 | PASSED (TLS12-ECDHE-RSA-AES256-GCM-server) 570 | PASSED (DTLS12-ECDHE-RSA-AES128-SHA256-client) 571 | PASSED (ECDHE-RSA-AES128-SHA256-LargeRecord) 572 | PASSED (DTLS12-ECDHE-RSA-AES128-SHA256-server) 573 | PASSED (ECDHE-RSA-AES128-SHA256-LargeRecord-DTLS) 574 | PASSED (TLS12-ECDHE-RSA-AES256-GCM-client) 575 | PASSED (DTLS12-ECDHE-RSA-AES256-GCM-server) 576 | PASSED (SSL3-ECDHE-RSA-AES256-SHA-server) 577 | PASSED (DTLS12-ECDHE-RSA-AES256-GCM-client) 578 | PASSED (ECDHE-RSA-AES256-GCM-LargeRecord) 579 | PASSED (ECDHE-RSA-AES256-GCM-LargeRecord-DTLS) 580 | PASSED (TLS1-ECDHE-RSA-AES256-SHA-server) 581 | PASSED (DTLS1-ECDHE-RSA-AES256-SHA-client) 582 | PASSED (TLS1-ECDHE-RSA-AES256-SHA-client) 583 | PASSED (TLS11-ECDHE-RSA-AES256-SHA-server) 584 | FAILED (DTLS1-ECDHE-RSA-AES256-SHA-server) 585 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 586 | 587 | stderr: 588 | session was not reused 589 | 590 | PASSED (TLS12-ECDHE-RSA-AES256-SHA-client) 591 | PASSED (TLS11-ECDHE-RSA-AES256-SHA-client) 592 | PASSED (TLS12-ECDHE-RSA-AES256-SHA-server) 593 | PASSED (ECDHE-RSA-AES256-SHA-LargeRecord) 594 | PASSED (DTLS12-ECDHE-RSA-AES256-SHA-server) 595 | PASSED (DTLS12-ECDHE-RSA-AES256-SHA-client) 596 | PASSED (ECDHE-RSA-AES256-SHA-LargeRecord-DTLS) 597 | PASSED (DTLS12-ECDHE-RSA-AES256-SHA384-server) 598 | PASSED (TLS12-ECDHE-RSA-AES256-SHA384-server) 599 | PASSED (TLS12-ECDHE-RSA-CHACHA20-POLY1305-client) 600 | PASSED (ECDHE-RSA-AES256-SHA384-LargeRecord) 601 | PASSED (TLS12-ECDHE-RSA-CHACHA20-POLY1305-server) 602 | PASSED (DTLS12-ECDHE-RSA-AES256-SHA384-client) 603 | FAILED (TLS12-ECDHE-RSA-CHACHA20-POLY1305-OLD-server) 604 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 605 | 606 | stderr: 607 | 46931813690816:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 608 | 609 | PASSED (DTLS12-ECDHE-RSA-CHACHA20-POLY1305-client) 610 | FAILED (DTLS12-ECDHE-RSA-CHACHA20-POLY1305-OLD-client) 611 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 612 | 613 | stderr: 614 | 47045651787200:error:14102410:SSL routines:dtls1_read_bytes:reason(1040):ssl/record/rec_layer_d1.c:844:SSL alert number 40 615 | 616 | PASSED (TLS12-ECDHE-RSA-AES256-SHA384-client) 617 | FAILED (TLS12-ECDHE-RSA-CHACHA20-POLY1305-OLD-client) 618 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 619 | 620 | stderr: 621 | 47070069386688:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 622 | 623 | FAILED (ECDHE-RSA-CHACHA20-POLY1305-OLD-LargeRecord) 624 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 625 | 626 | stderr: 627 | 47202026474944:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 628 | 629 | PASSED (ECDHE-RSA-AES256-SHA384-LargeRecord-DTLS) 630 | FAILED (DTLS12-ECDHE-RSA-CHACHA20-POLY1305-OLD-server) 631 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 632 | 633 | stderr: 634 | 47314951142848:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 635 | 636 | PASSED (SSL3-ECDHE-RSA-RC4-SHA-server) 637 | PASSED (DTLS12-ECDHE-RSA-CHACHA20-POLY1305-server) 638 | FAILED (ECDHE-RSA-CHACHA20-POLY1305-OLD-LargeRecord-DTLS) 639 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 640 | 641 | stderr: 642 | 47899845225920:error:14102410:SSL routines:dtls1_read_bytes:reason(1040):ssl/record/rec_layer_d1.c:844:SSL alert number 40 643 | 644 | FAILED (TLS1-ECDHE-RSA-RC4-SHA-client) 645 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 646 | 647 | stderr: 648 | 47272267619776:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 649 | 650 | FAILED (TLS11-ECDHE-RSA-RC4-SHA-server) 651 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 652 | 653 | stderr: 654 | 47145833549248:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 655 | 656 | PASSED (ECDHE-RSA-CHACHA20-POLY1305-LargeRecord) 657 | FAILED (TLS11-ECDHE-RSA-RC4-SHA-client) 658 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 659 | 660 | stderr: 661 | 47560499961280:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 662 | 663 | PASSED (ECDHE-RSA-CHACHA20-POLY1305-LargeRecord-DTLS) 664 | FAILED (TLS1-ECDHE-RSA-RC4-SHA-server) 665 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 666 | 667 | stderr: 668 | 47662858898880:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 669 | 670 | FAILED (TLS12-ECDHE-RSA-RC4-SHA-client) 671 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 672 | 673 | stderr: 674 | 47148199456192:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 675 | 676 | FAILED (TLS12-ECDHE-RSA-RC4-SHA-server) 677 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 678 | 679 | stderr: 680 | 47971338112448:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 681 | 682 | FAILED (ECDHE-RSA-RC4-SHA-LargeRecord) 683 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 684 | 685 | stderr: 686 | 47037436202432:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 687 | 688 | FAILED (SSL3-PSK-AES128-CBC-SHA-server) 689 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 690 | 691 | stderr: 692 | 47542687976896:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 693 | 694 | FAILED (SSL3-PSK-AES128-CBC-SHA-client) 695 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 696 | 697 | stderr: 698 | 47256420744640:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 699 | 700 | PASSED (TLS1-PSK-AES128-CBC-SHA-server) 701 | PASSED (TLS11-PSK-AES128-CBC-SHA-client) 702 | PASSED (TLS12-PSK-AES128-CBC-SHA-server) 703 | PASSED (TLS11-PSK-AES128-CBC-SHA-server) 704 | FAILED (DTLS1-PSK-AES128-CBC-SHA-server) 705 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 706 | 707 | stderr: 708 | session was not reused 709 | 710 | PASSED (TLS1-PSK-AES128-CBC-SHA-client) 711 | PASSED (DTLS12-PSK-AES128-CBC-SHA-client) 712 | PASSED (DTLS1-PSK-AES128-CBC-SHA-client) 713 | PASSED (TLS12-PSK-AES128-CBC-SHA-client) 714 | FAILED (SSL3-PSK-AES256-CBC-SHA-server) 715 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 716 | 717 | stderr: 718 | 47733172678080:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 719 | 720 | PASSED (PSK-AES128-CBC-SHA-LargeRecord) 721 | PASSED (DTLS12-PSK-AES128-CBC-SHA-server) 722 | FAILED (SSL3-PSK-AES256-CBC-SHA-client) 723 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 724 | 725 | stderr: 726 | 46959573732800:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 727 | 728 | PASSED (PSK-AES128-CBC-SHA-LargeRecord-DTLS) 729 | PASSED (TLS11-PSK-AES256-CBC-SHA-client) 730 | PASSED (TLS1-PSK-AES256-CBC-SHA-client) 731 | FAILED (DTLS1-PSK-AES256-CBC-SHA-server) 732 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 733 | 734 | stderr: 735 | session was not reused 736 | 737 | PASSED (TLS1-PSK-AES256-CBC-SHA-server) 738 | PASSED (TLS12-PSK-AES256-CBC-SHA-server) 739 | PASSED (TLS11-PSK-AES256-CBC-SHA-server) 740 | PASSED (DTLS12-PSK-AES256-CBC-SHA-client) 741 | PASSED (DTLS1-PSK-AES256-CBC-SHA-client) 742 | PASSED (DTLS12-PSK-AES256-CBC-SHA-server) 743 | PASSED (SSL3-ECDHE-PSK-AES128-CBC-SHA-server) 744 | PASSED (PSK-AES256-CBC-SHA-LargeRecord-DTLS) 745 | PASSED (PSK-AES256-CBC-SHA-LargeRecord) 746 | PASSED (TLS12-PSK-AES256-CBC-SHA-client) 747 | PASSED (TLS1-ECDHE-PSK-AES128-CBC-SHA-server) 748 | FAILED (DTLS1-ECDHE-PSK-AES128-CBC-SHA-server) 749 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 750 | 751 | stderr: 752 | session was not reused 753 | 754 | PASSED (TLS1-ECDHE-PSK-AES128-CBC-SHA-client) 755 | PASSED (TLS11-ECDHE-PSK-AES128-CBC-SHA-server) 756 | PASSED (TLS12-ECDHE-PSK-AES128-CBC-SHA-server) 757 | PASSED (DTLS1-ECDHE-PSK-AES128-CBC-SHA-client) 758 | PASSED (TLS11-ECDHE-PSK-AES128-CBC-SHA-client) 759 | PASSED (SSL3-ECDHE-PSK-AES256-CBC-SHA-server) 760 | PASSED (DTLS12-ECDHE-PSK-AES128-CBC-SHA-client) 761 | PASSED (TLS12-ECDHE-PSK-AES128-CBC-SHA-client) 762 | PASSED (ECDHE-PSK-AES128-CBC-SHA-LargeRecord-DTLS) 763 | PASSED (ECDHE-PSK-AES128-CBC-SHA-LargeRecord) 764 | PASSED (DTLS12-ECDHE-PSK-AES128-CBC-SHA-server) 765 | PASSED (TLS1-ECDHE-PSK-AES256-CBC-SHA-server) 766 | PASSED (TLS1-ECDHE-PSK-AES256-CBC-SHA-client) 767 | PASSED (DTLS1-ECDHE-PSK-AES256-CBC-SHA-client) 768 | PASSED (TLS12-ECDHE-PSK-AES256-CBC-SHA-server) 769 | PASSED (TLS11-ECDHE-PSK-AES256-CBC-SHA-client) 770 | PASSED (ECDHE-PSK-AES256-CBC-SHA-LargeRecord) 771 | PASSED (TLS12-ECDHE-PSK-CHACHA20-POLY1305-client) 772 | PASSED (TLS12-ECDHE-PSK-AES256-CBC-SHA-client) 773 | PASSED (TLS11-ECDHE-PSK-AES256-CBC-SHA-server) 774 | PASSED (ECDHE-PSK-AES256-CBC-SHA-LargeRecord-DTLS) 775 | FAILED (DTLS1-ECDHE-PSK-AES256-CBC-SHA-server) 776 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 777 | 778 | stderr: 779 | session was not reused 780 | 781 | PASSED (DTLS12-ECDHE-PSK-AES256-CBC-SHA-server) 782 | PASSED (DTLS12-ECDHE-PSK-AES256-CBC-SHA-client) 783 | PASSED (TLS12-ECDHE-PSK-CHACHA20-POLY1305-server) 784 | PASSED (DTLS12-ECDHE-PSK-CHACHA20-POLY1305-client) 785 | FAILED (SSL3-PSK-RC4-SHA-server) 786 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 787 | 788 | stderr: 789 | 47325694184896:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 790 | 791 | FAILED (SSL3-PSK-RC4-SHA-client) 792 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 793 | 794 | stderr: 795 | 47459685363136:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 796 | 797 | FAILED (TLS1-PSK-RC4-SHA-client) 798 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 799 | 800 | stderr: 801 | 47807877393856:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 802 | 803 | FAILED (TLS11-PSK-RC4-SHA-server) 804 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 805 | 806 | stderr: 807 | 47788117163456:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 808 | 809 | PASSED (DTLS12-ECDHE-PSK-CHACHA20-POLY1305-server) 810 | FAILED (TLS12-PSK-RC4-SHA-server) 811 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 812 | 813 | stderr: 814 | 47725487726016:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 815 | 816 | FAILED (TLS11-PSK-RC4-SHA-client) 817 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 818 | 819 | stderr: 820 | 47451769224640:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 821 | 822 | PASSED (ECDHE-PSK-CHACHA20-POLY1305-LargeRecord) 823 | FAILED (TLS1-PSK-RC4-SHA-server) 824 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 825 | 826 | stderr: 827 | 46995391389120:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 828 | 829 | FAILED (TLS12-PSK-RC4-SHA-client) 830 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 831 | 832 | stderr: 833 | 47856729218496:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 834 | 835 | PASSED (ECDHE-PSK-CHACHA20-POLY1305-LargeRecord-DTLS) 836 | FAILED (PSK-RC4-SHA-LargeRecord) 837 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 838 | 839 | stderr: 840 | 47251628453312:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 841 | 842 | FAILED (TLS11-RC4-MD5-client) 843 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 844 | 845 | stderr: 846 | 47603670478272:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 847 | 848 | FAILED (SSL3-RC4-MD5-server) 849 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 850 | 851 | stderr: 852 | 47696366157248:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 853 | 854 | FAILED (SSL3-RC4-MD5-client) 855 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 856 | 857 | stderr: 858 | 47228308499904:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 859 | 860 | FAILED (TLS1-RC4-MD5-client) 861 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 862 | 863 | stderr: 864 | 47253029318080:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 865 | 866 | FAILED (TLS1-RC4-MD5-server) 867 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 868 | 869 | stderr: 870 | 47256312610240:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 871 | 872 | FAILED (TLS12-RC4-MD5-server) 873 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 874 | 875 | stderr: 876 | 47364144106944:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 877 | 878 | FAILED (TLS11-RC4-MD5-server) 879 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 880 | 881 | stderr: 882 | 47064061386176:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 883 | 884 | FAILED (SSL3-RC4-SHA-server) 885 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 886 | 887 | stderr: 888 | 47402166586816:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 889 | 890 | FAILED (RC4-MD5-LargeRecord) 891 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 892 | 893 | stderr: 894 | 47874210713024:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 895 | 896 | FAILED (TLS12-RC4-MD5-client) 897 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 898 | 899 | stderr: 900 | 47423305350592:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 901 | 902 | FAILED (SSL3-RC4-SHA-client) 903 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 904 | 905 | stderr: 906 | 47284023721408:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 907 | 908 | FAILED (TLS1-RC4-SHA-client) 909 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 910 | 911 | stderr: 912 | 47333661167040:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 913 | 914 | FAILED (TLS1-RC4-SHA-server) 915 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 916 | 917 | stderr: 918 | 47225700515264:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 919 | 920 | FAILED (TLS11-RC4-SHA-client) 921 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 922 | 923 | stderr: 924 | 47406422597056:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 925 | 926 | FAILED (RC4-SHA-LargeRecord) 927 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 928 | 929 | stderr: 930 | 47722684091840:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 931 | 932 | FAILED (TLS12-RC4-SHA-client) 933 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 934 | 935 | stderr: 936 | 47333151907264:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 937 | 938 | FAILED (SSL3-NULL-SHA-client) 939 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 940 | 941 | stderr: 942 | 47157618589120:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 943 | 944 | FAILED (TLS12-RC4-SHA-server) 945 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 946 | 947 | stderr: 948 | 47711874264512:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 949 | 950 | FAILED (TLS11-RC4-SHA-server) 951 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 952 | 953 | stderr: 954 | 47368848235968:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 955 | 956 | FAILED (SSL3-NULL-SHA-server) 957 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 958 | 959 | stderr: 960 | 47363813182912:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 961 | 962 | FAILED (TLS1-NULL-SHA-server) 963 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 964 | 965 | stderr: 966 | 47695719722432:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 967 | 968 | FAILED (TLS11-NULL-SHA-client) 969 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 970 | 971 | stderr: 972 | 47221922385344:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 973 | 974 | FAILED (TLS12-NULL-SHA-server) 975 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 976 | 977 | stderr: 978 | 47172127464896:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 979 | 980 | FAILED (TLS1-NULL-SHA-client) 981 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 982 | 983 | stderr: 984 | 47979126181312:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 985 | 986 | FAILED (TLS11-NULL-SHA-server) 987 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 988 | 989 | stderr: 990 | 47396385906112:error:1417A0C1:SSL routines:tls_post_process_client_hello:no shared cipher:ssl/statem/statem_srvr.c:1481: 991 | 992 | FAILED (TLS12-NULL-SHA-client) 993 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 994 | 995 | stderr: 996 | 47055498272192:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 997 | 998 | FAILED (NULL-SHA-LargeRecord) 999 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 1000 | 1001 | stderr: 1002 | 47945043590592:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 1003 | 1004 | FAILED (VersionSpecificCiphersTest-0-300) 1005 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1006 | 1007 | stderr: 1008 | 47795285786048:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1009 | 1010 | FAILED (DHPublicValuePadded) 1011 | unexpected failure: local error 'RequireDHPublicValueLen set to 129, but server's public value was 128 bytes on the wire and 128 bytes if minimal', child error 'exit status 1', stdout: 1012 | 1013 | stderr: 1014 | 47668119670208:error:140943F2:SSL routines:ssl3_read_bytes:reason(1010):ssl/record/rec_layer_s3.c:1481:SSL alert number 10 1015 | 1016 | FAILED (VersionSpecificCiphersTest-0-302) 1017 | unexpected failure: local error 'got cipher 2f, expected 5', child error 'none', stdout: 1018 | 1019 | stderr: 1020 | 1021 | PASSED (VersionSpecificCiphersTest-1-303) 1022 | PASSED (VersionSpecificCiphersTest-1-300) 1023 | PASSED (VersionSpecificCiphersTest-1-301) 1024 | FAILED (VersionSpecificCiphersTest-0-301) 1025 | unexpected failure: local error 'got cipher 2f, expected 5', child error 'none', stdout: 1026 | 1027 | stderr: 1028 | 1029 | PASSED (VersionSpecificCiphersTest-1-302) 1030 | PASSED (VersionSpecificCiphersTest-2-301) 1031 | PASSED (VersionSpecificCiphersTest-2-302) 1032 | PASSED (VersionSpecificCiphersTest-2-303) 1033 | FAILED (VersionSpecificCiphersTest-0-303) 1034 | unexpected failure: local error 'got cipher 2f, expected 5', child error 'none', stdout: 1035 | 1036 | stderr: 1037 | 1038 | PASSED (VersionSpecificCiphersTest-3-301) 1039 | PASSED (UnknownCipher) 1040 | PASSED (VersionSpecificCiphersTest-3-300) 1041 | PASSED (VersionSpecificCiphersTest-3-303) 1042 | PASSED (VersionSpecificCiphersTest-2-300) 1043 | PASSED (VersionSpecificCiphersTest-3-302) 1044 | PASSED (WeakDH) 1045 | PASSED (BadECDSA-2-1) 1046 | PASSED (BadECDSA-2-2) 1047 | PASSED (BadECDSA-1-4) 1048 | PASSED (BadECDSA-2-3) 1049 | PASSED (BadECDSA-1-1) 1050 | PASSED (BadECDSA-1-3) 1051 | PASSED (BadECDSA-1-2) 1052 | PASSED (BadECDSA-2-4) 1053 | PASSED (BadECDSA-3-1) 1054 | PASSED (BadECDSA-3-2) 1055 | PASSED (BadECDSA-3-3) 1056 | PASSED (BadECDSA-4-3) 1057 | PASSED (BadECDSA-4-1) 1058 | PASSED (BadECDSA-3-4) 1059 | PASSED (BadECDSA-4-2) 1060 | PASSED (BadCBCPadding) 1061 | PASSED (MaxCBCPadding) 1062 | PASSED (BadECDSA-4-4) 1063 | FAILED (SSL3-Server-ClientAuth-RSA) 1064 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1065 | 1066 | stderr: 1067 | 47019951480256:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1068 | 1069 | PASSED (TLS1-Client-ClientAuth-RSA) 1070 | FAILED (SSL3-Client-ClientAuth-RSA) 1071 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1072 | 1073 | stderr: 1074 | 47573385870784:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1075 | 1076 | PASSED (BadCBCPadding255) 1077 | PASSED (TLS1-Server-ClientAuth-RSA) 1078 | PASSED (TLS1-Server-ClientAuth-ECDSA) 1079 | PASSED (TLS1-Client-ClientAuth-ECDSA) 1080 | PASSED (TLS11-Client-ClientAuth-RSA) 1081 | PASSED (TLS11-Server-ClientAuth-ECDSA) 1082 | PASSED (RequireAnyClientCertificate-SSL3) 1083 | PASSED (TLS12-Server-ClientAuth-ECDSA) 1084 | PASSED (TLS11-Client-ClientAuth-ECDSA) 1085 | PASSED (TLS12-Client-ClientAuth-RSA) 1086 | PASSED (TLS11-Server-ClientAuth-RSA) 1087 | PASSED (Server-DDoS-Reject-Resume) 1088 | PASSED (SkipClientCertificate) 1089 | PASSED (Server-DDoS-OK-NoResume) 1090 | PASSED (Server-DDoS-OK-Resume) 1091 | FAILED (VersionNegotiation-Client-SSL3-SSL3) 1092 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1093 | 1094 | stderr: 1095 | 47432741535168:error:141640BF:SSL routines:tls_construct_client_hello:no protocols available:ssl/statem/statem_clnt.c:820: 1096 | 1097 | PASSED (Server-DDoS-Reject-NoResume) 1098 | FAILED (VersionNegotiation-Client2-SSL3-TLS1) 1099 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1100 | 1101 | stderr: 1102 | 48000758922688:error:141640BF:SSL routines:tls_construct_client_hello:no protocols available:ssl/statem/statem_clnt.c:820: 1103 | 1104 | FAILED (VersionNegotiation-Server-SSL3-SSL3) 1105 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1106 | 1107 | stderr: 1108 | 47531291372992:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1109 | 1110 | FAILED (VersionNegotiation-Client2-SSL3-SSL3) 1111 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1112 | 1113 | stderr: 1114 | 47210735640000:error:141640BF:SSL routines:tls_construct_client_hello:no protocols available:ssl/statem/statem_clnt.c:820: 1115 | 1116 | FAILED (VersionNegotiation-Server2-SSL3-SSL3) 1117 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1118 | 1119 | stderr: 1120 | 47883985829312:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1121 | 1122 | PASSED (TLS12-Server-ClientAuth-RSA) 1123 | PASSED (TLS12-Client-ClientAuth-ECDSA) 1124 | PASSED (RequireAnyClientCertificate) 1125 | FAILED (VersionNegotiation-Server-SSL3-TLS1) 1126 | unexpected failure: local error 'tls: received record with version 301 when expecting version 300', child error 'exit status 1', stdout: 1127 | 1128 | stderr: 1129 | 47090807057856:error:1417D102:SSL routines:tls_process_client_hello:unsupported protocol:ssl/statem/statem_srvr.c:1053: 1130 | 1131 | FAILED (VersionNegotiation-Client-SSL3-TLS1) 1132 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1133 | 1134 | stderr: 1135 | 47159327444416:error:141640BF:SSL routines:tls_construct_client_hello:no protocols available:ssl/statem/statem_clnt.c:820: 1136 | 1137 | FAILED (VersionNegotiation-Server2-SSL3-TLS1) 1138 | unexpected failure: local error 'tls: received record with version 301 when expecting version 300', child error 'exit status 1', stdout: 1139 | 1140 | stderr: 1141 | 47921639960000:error:1417D102:SSL routines:tls_process_client_hello:unsupported protocol:ssl/statem/statem_srvr.c:1053: 1142 | 1143 | FAILED (VersionNegotiation-Client-SSL3-TLS11) 1144 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1145 | 1146 | stderr: 1147 | 46953166597568:error:141640BF:SSL routines:tls_construct_client_hello:no protocols available:ssl/statem/statem_clnt.c:820: 1148 | 1149 | FAILED (VersionNegotiation-Client2-SSL3-TLS11) 1150 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1151 | 1152 | stderr: 1153 | 47883925212608:error:141640BF:SSL routines:tls_construct_client_hello:no protocols available:ssl/statem/statem_clnt.c:820: 1154 | 1155 | FAILED (VersionNegotiation-Server2-SSL3-TLS11) 1156 | unexpected failure: local error 'tls: received record with version 302 when expecting version 300', child error 'exit status 1', stdout: 1157 | 1158 | stderr: 1159 | 47235617684928:error:1417D102:SSL routines:tls_process_client_hello:unsupported protocol:ssl/statem/statem_srvr.c:1053: 1160 | 1161 | FAILED (VersionNegotiation-Client-SSL3-TLS12) 1162 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1163 | 1164 | stderr: 1165 | 47186566307264:error:141640BF:SSL routines:tls_construct_client_hello:no protocols available:ssl/statem/statem_clnt.c:820: 1166 | 1167 | FAILED (VersionNegotiation-Client2-SSL3-TLS12) 1168 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1169 | 1170 | stderr: 1171 | 47529457450432:error:141640BF:SSL routines:tls_construct_client_hello:no protocols available:ssl/statem/statem_clnt.c:820: 1172 | 1173 | FAILED (VersionNegotiation-Server-SSL3-TLS11) 1174 | unexpected failure: local error 'tls: received record with version 302 when expecting version 300', child error 'exit status 1', stdout: 1175 | 1176 | stderr: 1177 | 47507656969664:error:1417D102:SSL routines:tls_process_client_hello:unsupported protocol:ssl/statem/statem_srvr.c:1053: 1178 | 1179 | FAILED (VersionNegotiation-Server-SSL3-TLS12) 1180 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1181 | 1182 | stderr: 1183 | 47754033438144:error:1417D102:SSL routines:tls_process_client_hello:unsupported protocol:ssl/statem/statem_srvr.c:1053: 1184 | 1185 | FAILED (VersionNegotiation-Client2-TLS1-SSL3) 1186 | unexpected failure: local error 'tls: received record with version 301 when expecting version 300', child error 'exit status 1', stdout: 1187 | 1188 | stderr: 1189 | 47877614464448:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1190 | 1191 | FAILED (VersionNegotiation-Server-TLS1-SSL3) 1192 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1193 | 1194 | stderr: 1195 | 48011081768384:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1196 | 1197 | FAILED (VersionNegotiation-Client-TLS1-SSL3) 1198 | unexpected failure: local error 'tls: received record with version 301 when expecting version 300', child error 'exit status 1', stdout: 1199 | 1200 | stderr: 1201 | 47035517922752:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1202 | 1203 | FAILED (VersionNegotiation-Server2-SSL3-TLS12) 1204 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1205 | 1206 | stderr: 1207 | 47765479419328:error:1417D102:SSL routines:tls_process_client_hello:unsupported protocol:ssl/statem/statem_srvr.c:1053: 1208 | 1209 | FAILED (VersionNegotiation-Server2-TLS1-SSL3) 1210 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1211 | 1212 | stderr: 1213 | 47533578681792:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1214 | 1215 | PASSED (VersionNegotiation-Server-TLS1-TLS1) 1216 | PASSED (VersionNegotiation-Client-TLS1-TLS1) 1217 | PASSED (VersionNegotiation-Client2-TLS1-TLS1-DTLS) 1218 | PASSED (VersionNegotiation-Client-TLS1-TLS1-DTLS) 1219 | PASSED (VersionNegotiation-Server2-TLS1-TLS1) 1220 | PASSED (VersionNegotiation-Client2-TLS1-TLS1) 1221 | PASSED (VersionNegotiation-Server2-TLS1-TLS1-DTLS) 1222 | PASSED (VersionNegotiation-Server-TLS1-TLS1-DTLS) 1223 | PASSED (VersionNegotiation-Client-TLS1-TLS11) 1224 | PASSED (VersionNegotiation-Client2-TLS1-TLS12) 1225 | PASSED (VersionNegotiation-Client-TLS1-TLS12) 1226 | PASSED (VersionNegotiation-Client2-TLS1-TLS11) 1227 | PASSED (VersionNegotiation-Server-TLS1-TLS11) 1228 | PASSED (VersionNegotiation-Server2-TLS1-TLS11) 1229 | PASSED (VersionNegotiation-Server2-TLS1-TLS12) 1230 | PASSED (VersionNegotiation-Server-TLS1-TLS12-DTLS) 1231 | PASSED (VersionNegotiation-Server-TLS1-TLS12) 1232 | FAILED (VersionNegotiation-Client-TLS11-SSL3) 1233 | unexpected failure: local error 'tls: client included signature_algorithms before TLS 1.2', child error 'exit status 1', stdout: 1234 | 1235 | stderr: 1236 | 1237 | FAILED (VersionNegotiation-Client2-TLS11-SSL3) 1238 | unexpected failure: local error 'tls: client included signature_algorithms before TLS 1.2', child error 'exit status 1', stdout: 1239 | 1240 | stderr: 1241 | 1242 | PASSED (VersionNegotiation-Client-TLS1-TLS12-DTLS) 1243 | FAILED (VersionNegotiation-Client-TLS11-TLS1) 1244 | unexpected failure: local error 'tls: client included signature_algorithms before TLS 1.2', child error 'exit status 1', stdout: 1245 | 1246 | stderr: 1247 | 1248 | FAILED (VersionNegotiation-Client2-TLS11-TLS1) 1249 | unexpected failure: local error 'tls: client included signature_algorithms before TLS 1.2', child error 'exit status 1', stdout: 1250 | 1251 | stderr: 1252 | 1253 | PASSED (VersionNegotiation-Client2-TLS1-TLS12-DTLS) 1254 | FAILED (VersionNegotiation-Server-TLS11-SSL3) 1255 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1256 | 1257 | stderr: 1258 | 47967675706816:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1259 | 1260 | PASSED (VersionNegotiation-Server2-TLS1-TLS12-DTLS) 1261 | FAILED (VersionNegotiation-Server2-TLS11-SSL3) 1262 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1263 | 1264 | stderr: 1265 | 46998801849792:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1266 | 1267 | FAILED (VersionNegotiation-Client-TLS11-TLS11) 1268 | unexpected failure: local error 'tls: client included signature_algorithms before TLS 1.2', child error 'exit status 1', stdout: 1269 | 1270 | stderr: 1271 | 1272 | FAILED (VersionNegotiation-Client2-TLS11-TLS11) 1273 | unexpected failure: local error 'tls: client included signature_algorithms before TLS 1.2', child error 'exit status 1', stdout: 1274 | 1275 | stderr: 1276 | 1277 | PASSED (VersionNegotiation-Server2-TLS11-TLS1) 1278 | FAILED (VersionNegotiation-Client-TLS11-TLS12) 1279 | unexpected failure: local error 'tls: client included signature_algorithms before TLS 1.2', child error 'exit status 1', stdout: 1280 | 1281 | stderr: 1282 | 1283 | PASSED (VersionNegotiation-Server-TLS11-TLS1) 1284 | FAILED (VersionNegotiation-Client2-TLS11-TLS12) 1285 | unexpected failure: local error 'tls: client included signature_algorithms before TLS 1.2', child error 'exit status 1', stdout: 1286 | 1287 | stderr: 1288 | 1289 | PASSED (VersionNegotiation-Server2-TLS11-TLS11) 1290 | PASSED (VersionNegotiation-Server-TLS11-TLS11) 1291 | FAILED (VersionNegotiation-Server2-TLS12-SSL3) 1292 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1293 | 1294 | stderr: 1295 | 47758654217664:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1296 | 1297 | PASSED (VersionNegotiation-Server-TLS11-TLS12) 1298 | PASSED (VersionNegotiation-Server2-TLS11-TLS12) 1299 | FAILED (VersionNegotiation-Client-TLS12-SSL3) 1300 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1301 | 1302 | stderr: 1303 | 47133351759296:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1304 | 1305 | FAILED (VersionNegotiation-Server-TLS12-SSL3) 1306 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1307 | 1308 | stderr: 1309 | 47841688681920:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1310 | 1311 | FAILED (VersionNegotiation-Client2-TLS12-SSL3) 1312 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1313 | 1314 | stderr: 1315 | 47412426214848:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1316 | 1317 | PASSED (VersionNegotiation-Server-TLS12-TLS1) 1318 | PASSED (VersionNegotiation-Client-TLS12-TLS1-DTLS) 1319 | PASSED (VersionNegotiation-Client-TLS12-TLS11) 1320 | PASSED (VersionNegotiation-Server2-TLS12-TLS1-DTLS) 1321 | PASSED (VersionNegotiation-Server2-TLS12-TLS1) 1322 | PASSED (VersionNegotiation-Client-TLS12-TLS1) 1323 | PASSED (VersionNegotiation-Server-TLS12-TLS1-DTLS) 1324 | PASSED (VersionNegotiation-Client2-TLS12-TLS1) 1325 | PASSED (VersionNegotiation-Client-TLS12-TLS12) 1326 | PASSED (VersionNegotiation-Server2-TLS12-TLS11) 1327 | PASSED (VersionNegotiation-Client2-TLS12-TLS11) 1328 | PASSED (VersionNegotiation-Client2-TLS12-TLS1-DTLS) 1329 | PASSED (VersionNegotiation-Server-TLS12-TLS11) 1330 | PASSED (VersionNegotiation-Server-TLS12-TLS12) 1331 | PASSED (VersionNegotiation-Client-TLS12-TLS12-DTLS) 1332 | PASSED (VersionNegotiation-Client2-TLS12-TLS12) 1333 | FAILED (MinimumVersion-Client2-SSL3-SSL3) 1334 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1335 | 1336 | stderr: 1337 | 46919582891456:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1338 | 1339 | PASSED (VersionNegotiation-Server2-TLS12-TLS12-DTLS) 1340 | PASSED (VersionNegotiation-Server-TLS12-TLS12-DTLS) 1341 | FAILED (MinimumVersion-Client-SSL3-SSL3) 1342 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1343 | 1344 | stderr: 1345 | 47030905458112:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1346 | 1347 | FAILED (MinimumVersion-Server-SSL3-SSL3) 1348 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1349 | 1350 | stderr: 1351 | 47132207459776:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1352 | 1353 | PASSED (VersionNegotiation-Server2-TLS12-TLS12) 1354 | PASSED (VersionNegotiation-Client2-TLS12-TLS12-DTLS) 1355 | FAILED (MinimumVersion-Server2-SSL3-SSL3) 1356 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1357 | 1358 | stderr: 1359 | 47374582865344:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1360 | 1361 | PASSED (MinimumVersion-Client-SSL3-TLS1) 1362 | PASSED (MinimumVersion-Client2-SSL3-TLS1) 1363 | PASSED (MinimumVersion-Client-SSL3-TLS11) 1364 | PASSED (MinimumVersion-Server2-SSL3-TLS1) 1365 | PASSED (MinimumVersion-Server-SSL3-TLS11) 1366 | PASSED (MinimumVersion-Server2-SSL3-TLS11) 1367 | PASSED (MinimumVersion-Server-SSL3-TLS12) 1368 | PASSED (MinimumVersion-Server2-SSL3-TLS12) 1369 | PASSED (MinimumVersion-Client2-SSL3-TLS12) 1370 | PASSED (MinimumVersion-Client2-SSL3-TLS11) 1371 | PASSED (MinimumVersion-Server-SSL3-TLS1) 1372 | PASSED (MinimumVersion-Client-SSL3-TLS12) 1373 | FAILED (MinimumVersion-Client-TLS1-SSL3) 1374 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1375 | 1376 | stderr: 1377 | 47158206922176:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1378 | 1379 | FAILED (MinimumVersion-Server-TLS1-SSL3) 1380 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1381 | 1382 | stderr: 1383 | 47985025961408:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1384 | 1385 | FAILED (MinimumVersion-Client2-TLS1-SSL3) 1386 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1387 | 1388 | stderr: 1389 | 47534913875392:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1390 | 1391 | PASSED (MinimumVersion-Client2-TLS1-TLS1) 1392 | PASSED (MinimumVersion-Server2-TLS1-TLS1) 1393 | FAILED (MinimumVersion-Server2-TLS1-SSL3) 1394 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1395 | 1396 | stderr: 1397 | 47269789289920:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1398 | 1399 | PASSED (MinimumVersion-Client-TLS1-TLS1) 1400 | PASSED (MinimumVersion-Server-TLS1-TLS1) 1401 | PASSED (MinimumVersion-Client-TLS1-TLS1-DTLS) 1402 | PASSED (MinimumVersion-Server2-TLS1-TLS1-DTLS) 1403 | PASSED (MinimumVersion-Server-TLS1-TLS11) 1404 | PASSED (MinimumVersion-Client2-TLS1-TLS11) 1405 | PASSED (MinimumVersion-Client2-TLS1-TLS1-DTLS) 1406 | PASSED (MinimumVersion-Client-TLS1-TLS11) 1407 | PASSED (MinimumVersion-Server-TLS1-TLS1-DTLS) 1408 | PASSED (MinimumVersion-Server2-TLS1-TLS12) 1409 | PASSED (MinimumVersion-Server-TLS1-TLS12-DTLS) 1410 | PASSED (MinimumVersion-Client-TLS1-TLS12) 1411 | PASSED (MinimumVersion-Server2-TLS1-TLS11) 1412 | PASSED (MinimumVersion-Client-TLS1-TLS12-DTLS) 1413 | PASSED (MinimumVersion-Server-TLS1-TLS12) 1414 | PASSED (MinimumVersion-Server2-TLS1-TLS12-DTLS) 1415 | FAILED (MinimumVersion-Server-TLS11-SSL3) 1416 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1417 | 1418 | stderr: 1419 | 47465978088896:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1420 | 1421 | FAILED (MinimumVersion-Client2-TLS11-SSL3) 1422 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1423 | 1424 | stderr: 1425 | 47661794098624:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1426 | 1427 | PASSED (MinimumVersion-Client2-TLS1-TLS12) 1428 | FAILED (MinimumVersion-Server2-TLS11-SSL3) 1429 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1430 | 1431 | stderr: 1432 | 47787215232448:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1433 | 1434 | FAILED (MinimumVersion-Client-TLS11-SSL3) 1435 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1436 | 1437 | stderr: 1438 | 47499145764288:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1439 | 1440 | FAILED (MinimumVersion-Client-TLS11-TLS1) 1441 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 301', child error 'exit status 1', stdout: 1442 | 1443 | stderr: 1444 | 47956817092032:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1445 | 1446 | PASSED (MinimumVersion-Server-TLS11-TLS1) 1447 | FAILED (MinimumVersion-Client2-TLS11-TLS1) 1448 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 301', child error 'exit status 1', stdout: 1449 | 1450 | stderr: 1451 | 47473769582016:error:1417118C:SSL routines:tls_process_server_hello:version too low:ssl/statem/statem_clnt.c:1044: 1452 | 1453 | PASSED (MinimumVersion-Server2-TLS11-TLS1) 1454 | PASSED (MinimumVersion-Client-TLS11-TLS11) 1455 | PASSED (MinimumVersion-Client2-TLS1-TLS12-DTLS) 1456 | PASSED (MinimumVersion-Client2-TLS11-TLS11) 1457 | PASSED (MinimumVersion-Server-TLS11-TLS11) 1458 | PASSED (MinimumVersion-Server2-TLS11-TLS11) 1459 | FAILED (MinimumVersion-Server-TLS12-SSL3) 1460 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1461 | 1462 | stderr: 1463 | 46928251731392:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1464 | 1465 | PASSED (MinimumVersion-Server2-TLS11-TLS12) 1466 | PASSED (MinimumVersion-Client-TLS11-TLS12) 1467 | PASSED (MinimumVersion-Server-TLS11-TLS12) 1468 | FAILED (MinimumVersion-Server2-TLS12-SSL3) 1469 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1470 | 1471 | stderr: 1472 | 46985924214208:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1473 | 1474 | PASSED (MinimumVersion-Client2-TLS11-TLS12) 1475 | FAILED (MinimumVersion-Client-TLS12-SSL3) 1476 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1477 | 1478 | stderr: 1479 | 47313905880512:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1480 | 1481 | FAILED (MinimumVersion-Client-TLS12-TLS1) 1482 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 301', child error 'exit status 1', stdout: 1483 | 1484 | stderr: 1485 | 47762047466944:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1486 | 1487 | FAILED (MinimumVersion-Client2-TLS12-SSL3) 1488 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1489 | 1490 | stderr: 1491 | 47209234763200:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1492 | 1493 | FAILED (MinimumVersion-Client-TLS12-TLS1-DTLS) 1494 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'dtls: received record with version 303 when expecting version 301', child error 'exit status 1', stdout: 1495 | 1496 | stderr: 1497 | 47752339008960:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1498 | 1499 | PASSED (MinimumVersion-Server2-TLS12-TLS1) 1500 | PASSED (MinimumVersion-Server-TLS12-TLS1) 1501 | FAILED (MinimumVersion-Client2-TLS12-TLS1-DTLS) 1502 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'dtls: received record with version 303 when expecting version 301', child error 'exit status 1', stdout: 1503 | 1504 | stderr: 1505 | 47872844344768:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1506 | 1507 | FAILED (MinimumVersion-Client2-TLS12-TLS1) 1508 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 301', child error 'exit status 1', stdout: 1509 | 1510 | stderr: 1511 | 47355876502976:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1512 | 1513 | PASSED (MinimumVersion-Server2-TLS12-TLS1-DTLS) 1514 | PASSED (MinimumVersion-Server-TLS12-TLS1-DTLS) 1515 | PASSED (CBCRecordSplittingPartialWrite) 1516 | FAILED (MinimumVersion-Client2-TLS12-TLS11) 1517 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 302', child error 'exit status 1', stdout: 1518 | 1519 | stderr: 1520 | 47142280420800:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1521 | 1522 | FAILED (MinimumVersion-Client-TLS12-TLS11) 1523 | bad error (wanted ':UNSUPPORTED_PROTOCOL:' / 'remote error: protocol version not supported'): local error 'tls: received record with version 303 when expecting version 302', child error 'exit status 1', stdout: 1524 | 1525 | stderr: 1526 | 47431805099456:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1527 | 1528 | PASSED (MinimumVersion-Server-TLS12-TLS11) 1529 | PASSED (MinimumVersion-Server-TLS12-TLS12) 1530 | PASSED (MinimumVersion-Client-TLS12-TLS12) 1531 | PASSED (MinimumVersion-Client2-TLS12-TLS12) 1532 | PASSED (MinimumVersion-Server2-TLS12-TLS12) 1533 | PASSED (MinimumVersion-Server2-TLS12-TLS12-DTLS) 1534 | PASSED (MinimumVersion-Server2-TLS12-TLS11) 1535 | PASSED (DuplicateExtensionServer) 1536 | PASSED (ServerNameExtensionClientMismatch) 1537 | PASSED (MinimumVersion-Client-TLS12-TLS12-DTLS) 1538 | PASSED (MinimumVersion-Server-TLS12-TLS12-DTLS) 1539 | PASSED (DuplicateExtensionClient) 1540 | PASSED (ServerNameExtensionClient) 1541 | PASSED (ServerNameExtensionClientMissing) 1542 | PASSED (ALPNServer-EmptyProtocolName) 1543 | PASSED (MinimumVersion-Client2-TLS12-TLS12-DTLS) 1544 | PASSED (ALPNClient-EmptyProtocolName) 1545 | FAILED (NegotiateALPNAndNPN) 1546 | unexpected success: local error 'none', child error 'none', stdout: 1547 | 1548 | stderr: 1549 | 1550 | PASSED (ALPNClient) 1551 | PASSED (ServerNameExtensionServer) 1552 | PASSED (DisableNPN) 1553 | PASSED (ALPNServer) 1554 | FAILED (NegotiateALPNAndNPN-Swapped) 1555 | unexpected success: local error 'none', child error 'none', stdout: 1556 | 1557 | stderr: 1558 | 1559 | PASSED (ALPNServer-Preferred) 1560 | FAILED (ALPNServer-Preferred-Swapped) 1561 | unexpected failure: local error 'server advertised both NPN and ALPN extensions', child error 'exit status 1', stdout: 1562 | 1563 | stderr: 1564 | 48010403958208:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 1565 | 1566 | PASSED (SRTP-Server-IgnoreMKI) 1567 | PASSED (SRTP-Client-NoMatch) 1568 | PASSED (SRTP-Server) 1569 | PASSED (SRTP-Client) 1570 | PASSED (TicketCallback-Renew) 1571 | PASSED (SignedCertificateTimestampList-Client) 1572 | PASSED (OversizedSessionId) 1573 | PASSED (CorruptTicket) 1574 | PASSED (SignedCertificateTimestampList-Server) 1575 | PASSED (TicketCallback) 1576 | FAILED (SSLv3Extensions-NoTickets2) 1577 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1578 | 1579 | stderr: 1580 | 47314221264320:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1581 | 1582 | FAILED (SSLv3Extensions-RenegotiationInfo) 1583 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1584 | 1585 | stderr: 1586 | 47644888378816:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1587 | 1588 | FAILED (SSLv3Extensions-RenegotiationInfo-SCSV) 1589 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1590 | 1591 | stderr: 1592 | 46923052035520:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1593 | 1594 | FAILED (SSLv3Extensions-NoALPN) 1595 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1596 | 1597 | stderr: 1598 | 47514124287424:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1599 | 1600 | PASSED (SRTP-Server-NoMatch) 1601 | FAILED (ClientHelloPadding) 1602 | unexpected failure: local error 'tls: ClientHello record size is 350, but expected 512', child error 'exit status 1', stdout: 1603 | 1604 | stderr: 1605 | 1606 | FAILED (Resume-Client-SSL3-SSL3) 1607 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1608 | 1609 | stderr: 1610 | 47773614325184:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1611 | 1612 | FAILED (Resume-Client-NoResume-SSL3-SSL3) 1613 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1614 | 1615 | stderr: 1616 | 46956584385984:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1617 | 1618 | PASSED (Resume-Client-Mismatch-SSL3-TLS11) 1619 | FAILED (SSLv3Extensions-NoTickets) 1620 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1621 | 1622 | stderr: 1623 | 46945186717120:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1624 | 1625 | PASSED (Resume-Client-Mismatch-SSL3-TLS1) 1626 | FAILED (Resume-Client-NoResume-SSL3-TLS1) 1627 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1628 | 1629 | stderr: 1630 | 47065082052032:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1631 | 1632 | FAILED (Resume-Server-SSL3-SSL3) 1633 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1634 | 1635 | stderr: 1636 | 47376096325056:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1637 | 1638 | FAILED (Resume-Server-SSL3-TLS11) 1639 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1640 | 1641 | stderr: 1642 | 46920455855552:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1643 | 1644 | FAILED (Resume-Client-NoResume-SSL3-TLS11) 1645 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1646 | 1647 | stderr: 1648 | 47412773989824:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1649 | 1650 | PASSED (Resume-Client-Mismatch-SSL3-TLS12) 1651 | FAILED (Resume-Server-SSL3-TLS1) 1652 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1653 | 1654 | stderr: 1655 | 47993066196416:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1656 | 1657 | FAILED (Resume-Client-NoResume-SSL3-TLS12) 1658 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1659 | 1660 | stderr: 1661 | 46971905564096:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1662 | 1663 | FAILED (Resume-Server-SSL3-TLS12) 1664 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1665 | 1666 | stderr: 1667 | 47758937972160:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1668 | 1669 | FAILED (Resume-Client-NoResume-TLS1-SSL3) 1670 | unexpected failure: local error 'tls: received record with version 301 when expecting version 300', child error 'exit status 1', stdout: 1671 | 1672 | stderr: 1673 | 47552687005120:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1674 | 1675 | PASSED (Resume-Client-Mismatch-TLS1-SSL3) 1676 | PASSED (Resume-Client-TLS1-TLS1) 1677 | FAILED (Resume-Server-TLS1-SSL3) 1678 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1679 | 1680 | stderr: 1681 | 47096983514560:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1682 | 1683 | PASSED (Resume-Client-TLS1-TLS1-DTLS) 1684 | PASSED (Resume-Client-NoResume-TLS1-TLS1-DTLS) 1685 | PASSED (Resume-Client-NoResume-TLS1-TLS1) 1686 | PASSED (Resume-Server-TLS1-TLS1) 1687 | FAILED (Resume-Server-TLS1-TLS1-DTLS) 1688 | unexpected failure: local error 'didResume is false, but we expected the opposite', child error 'exit status 1', stdout: 1689 | 1690 | stderr: 1691 | session was not reused 1692 | 1693 | FAILED (Resume-Client-Mismatch-TLS1-TLS11) 1694 | bad error (wanted ':OLD_SESSION_VERSION_NOT_RETURNED:' / ''): local error 'got version 301, expected 302', child error 'none', stdout: 1695 | 1696 | stderr: 1697 | 1698 | PASSED (Resume-Server-TLS1-TLS11) 1699 | FAILED (Resume-Client-Mismatch-TLS1-TLS12) 1700 | bad error (wanted ':OLD_SESSION_VERSION_NOT_RETURNED:' / ''): local error 'got version 301, expected 303', child error 'none', stdout: 1701 | 1702 | stderr: 1703 | 1704 | FAILED (Resume-Client-Mismatch-TLS1-TLS12-DTLS) 1705 | bad error (wanted ':OLD_SESSION_VERSION_NOT_RETURNED:' / ''): local error 'got version 301, expected 303', child error 'none', stdout: 1706 | 1707 | stderr: 1708 | 1709 | FAILED (Resume-Client-NoResume-TLS1-TLS11) 1710 | unexpected failure: local error 'got version 301, expected 302', child error 'none', stdout: 1711 | 1712 | stderr: 1713 | 1714 | FAILED (Resume-Client-NoResume-TLS1-TLS12) 1715 | unexpected failure: local error 'got version 301, expected 303', child error 'none', stdout: 1716 | 1717 | stderr: 1718 | 1719 | FAILED (SillyDH) 1720 | unexpected success: local error 'none', child error 'none', stdout: 1721 | 1722 | stderr: 1723 | 1724 | PASSED (Resume-Server-TLS1-TLS12) 1725 | PASSED (Resume-Client-Mismatch-TLS11-SSL3) 1726 | FAILED (Resume-Client-NoResume-TLS1-TLS12-DTLS) 1727 | unexpected failure: local error 'got version 301, expected 303', child error 'none', stdout: 1728 | 1729 | stderr: 1730 | 1731 | PASSED (Resume-Client-TLS11-TLS11) 1732 | PASSED (Resume-Server-TLS1-TLS12-DTLS) 1733 | FAILED (Resume-Client-NoResume-TLS11-TLS1) 1734 | unexpected failure: local error 'tls: received record with version 302 when expecting version 301', child error 'exit status 1', stdout: 1735 | 1736 | stderr: 1737 | 47367304965568:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1738 | 1739 | PASSED (Resume-Client-Mismatch-TLS11-TLS1) 1740 | PASSED (Resume-Server-TLS11-TLS1) 1741 | PASSED (Resume-Server-TLS11-TLS11) 1742 | FAILED (Resume-Server-TLS11-SSL3) 1743 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1744 | 1745 | stderr: 1746 | 47530770714048:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1747 | 1748 | FAILED (Resume-Client-NoResume-TLS11-SSL3) 1749 | unexpected failure: local error 'tls: received record with version 302 when expecting version 300', child error 'exit status 1', stdout: 1750 | 1751 | stderr: 1752 | 47974513012160:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1753 | 1754 | FAILED (Resume-Server-TLS12-SSL3) 1755 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1756 | 1757 | stderr: 1758 | 47792601836992:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1759 | 1760 | PASSED (Resume-Client-Mismatch-TLS12-SSL3) 1761 | PASSED (Resume-Client-Mismatch-TLS12-TLS1) 1762 | FAILED (Resume-Client-NoResume-TLS11-TLS12) 1763 | unexpected failure: local error 'got version 302, expected 303', child error 'none', stdout: 1764 | 1765 | stderr: 1766 | 1767 | FAILED (Resume-Client-NoResume-TLS12-SSL3) 1768 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1769 | 1770 | stderr: 1771 | 47458891668928:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1772 | 1773 | FAILED (Resume-Client-Mismatch-TLS11-TLS12) 1774 | bad error (wanted ':OLD_SESSION_VERSION_NOT_RETURNED:' / ''): local error 'got version 302, expected 303', child error 'none', stdout: 1775 | 1776 | stderr: 1777 | 1778 | PASSED (Resume-Client-NoResume-TLS11-TLS11) 1779 | PASSED (Resume-Server-TLS11-TLS12) 1780 | PASSED (Resume-Server-TLS12-TLS1) 1781 | PASSED (CBCRecordSplitting) 1782 | FAILED (Resume-Client-NoResume-TLS12-TLS1) 1783 | unexpected failure: local error 'tls: received record with version 303 when expecting version 301', child error 'exit status 1', stdout: 1784 | 1785 | stderr: 1786 | 47879291604416:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1787 | 1788 | FAILED (Resume-Client-NoResume-TLS12-TLS1-DTLS) 1789 | unexpected failure: local error 'dtls: received record with version 303 when expecting version 301', child error 'exit status 1', stdout: 1790 | 1791 | stderr: 1792 | 47083181690304:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1793 | 1794 | PASSED (Resume-Client-Mismatch-TLS12-TLS1-DTLS) 1795 | PASSED (Resume-Server-TLS12-TLS1-DTLS) 1796 | PASSED (Resume-Client-Mismatch-TLS12-TLS11) 1797 | FAILED (Resume-Client-NoResume-TLS12-TLS11) 1798 | unexpected failure: local error 'tls: received record with version 303 when expecting version 302', child error 'exit status 1', stdout: 1799 | 1800 | stderr: 1801 | 47917670452672:error:1417110A:SSL routines:tls_process_server_hello:wrong ssl version:ssl/statem/statem_clnt.c:1044: 1802 | 1803 | PASSED (Resume-Server-TLS12-TLS11) 1804 | FAILED (NoExtendedMasterSecret-SSL3-Server) 1805 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1806 | 1807 | stderr: 1808 | 47754208161216:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1809 | 1810 | PASSED (Resume-Server-TLS12-TLS12) 1811 | PASSED (Resume-Client-TLS12-TLS12) 1812 | PASSED (NoExtendedMasterSecret-TLS11-Server) 1813 | PASSED (Resume-Client-CipherMismatch) 1814 | PASSED (Resume-Client-TLS12-TLS12-DTLS) 1815 | PASSED (Resume-Server-TLS12-TLS12-DTLS) 1816 | PASSED (NoExtendedMasterSecret-TLS1-Server) 1817 | PASSED (Resume-Client-NoResume-TLS12-TLS12) 1818 | PASSED (NoExtendedMasterSecret-TLS12-Server) 1819 | FAILED (NoExtendedMasterSecret-SSL3-Client) 1820 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1821 | 1822 | stderr: 1823 | 47906098884032:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1824 | 1825 | PASSED (Resume-Client-NoResume-TLS12-TLS12-DTLS) 1826 | PASSED (NoExtendedMasterSecret-TLS12-Client) 1827 | FAILED (ExtendedMasterSecret-SSL3-Server) 1828 | bad error (wanted '' / 'extended master secret required but not supported by peer'): local error 'remote error: handshake failure', child error 'exit status 1', stdout: 1829 | 1830 | stderr: 1831 | 47165662326208:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 1832 | 1833 | PASSED (NoExtendedMasterSecret-TLS11-Client) 1834 | PASSED (ExtendedMasterSecret-TLS1-Server) 1835 | PASSED (ExtendedMasterSecret-TLS11-Server) 1836 | FAILED (ExtendedMasterSecret-SSL3-Client) 1837 | bad error (wanted '' / 'extended master secret required but not supported by peer'): local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 1838 | 1839 | stderr: 1840 | 47603030269376:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 1841 | 1842 | PASSED (ExtendedMasterSecret-TLS12-Server) 1843 | PASSED (NoExtendedMasterSecret-TLS1-Client) 1844 | PASSED (ExtendedMasterSecret-TLS1-Client) 1845 | PASSED (ExtendedMasterSecret-YesToNo-Server) 1846 | PASSED (ExtendedMasterSecret-TLS11-Client) 1847 | PASSED (ExtendedMasterSecret-TLS12-Client) 1848 | PASSED (ExtendedMasterSecret-NoToNo-Server) 1849 | PASSED (ExtendedMasterSecret-YesToYes-Server) 1850 | PASSED (ExtendedMasterSecret-NoToYes-Server) 1851 | PASSED (ExtendedMasterSecret-NoToNo-Client) 1852 | PASSED (ExtendedMasterSecret-NoToYes-Client) 1853 | PASSED (ExtendedMasterSecret-YesToNo-Client) 1854 | PASSED (Renegotiate-Server-NoExt) 1855 | FAILED (Renegotiate-Client-SwitchCiphers) 1856 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 1857 | 1858 | stderr: 1859 | 47775679811008:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 1860 | 1861 | PASSED (Renegotiate-Server-NoExt-SCSV) 1862 | PASSED (Renegotiate-Client-EmptyExt) 1863 | FAILED (Renegotiate-Server-Forbidden) 1864 | bad error (wanted ':NO_RENEGOTIATION:' / 'remote error: no renegotiation'): local error 'EOF', child error 'exit status 1', stdout: 1865 | 1866 | stderr: 1867 | 1868 | PASSED (Renegotiate-Client-BadExt) 1869 | FAILED (Renegotiate-Client) 1870 | unexpected failure: local error 'tls: offered resumption on renegotiation', child error 'exit status 1', stdout: 1871 | 1872 | stderr: 1873 | 1874 | PASSED (ExtendedMasterSecret-YesToYes-Client) 1875 | FAILED (Renegotiate-Client-Upgrade) 1876 | bad error (wanted ':RENEGOTIATION_MISMATCH:' / ''): local error 'EOF', child error 'exit status 1', stdout: 1877 | 1878 | stderr: 1879 | 1880 | PASSED (Renegotiate-Client-Once-1) 1881 | PASSED (Renegotiate-FalseStart) 1882 | PASSED (Renegotiate-Client-Once-2) 1883 | FAILED (Renegotiate-Client-Downgrade) 1884 | bad error (wanted ':RENEGOTIATION_MISMATCH:' / ''): local error 'EOF', child error 'exit status 1', stdout: 1885 | 1886 | stderr: 1887 | 1888 | FAILED (Renegotiate-Client-NoExt-Allowed) 1889 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1890 | 1891 | stderr: 1892 | 1893 | PASSED (Renegotiate-Client-Ignore) 1894 | FAILED (Renegotiate-Client-SwitchCiphers2) 1895 | unexpected failure: local error 'tls: no cipher suite supported by both client and server', child error 'exit status 1', stdout: 1896 | 1897 | stderr: 1898 | 47105816653248:error:14094410:SSL routines:ssl3_read_bytes:reason(1040):ssl/record/rec_layer_s3.c:1481:SSL alert number 40 1899 | 1900 | FAILED (Renegotiate-SameClientVersion) 1901 | unexpected failure: local error 'tls: client offered different version on renego', child error 'exit status 1', stdout: 1902 | 1903 | stderr: 1904 | 1905 | FAILED (Renegotiate-Client-Freely-1) 1906 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1907 | 1908 | stderr: 1909 | 1910 | PASSED (SigningHash-ClientAuth-SHA1) 1911 | FAILED (Renegotiate-Client-Forbidden-1) 1912 | bad error (wanted ':NO_RENEGOTIATION:' / 'remote error: no renegotiation'): local error 'EOF', child error 'exit status 1', stdout: 1913 | 1914 | stderr: 1915 | 1916 | PASSED (Renegotiate-Client-NoIgnore) 1917 | PASSED (SigningHash-ServerKeyExchange-Sign-SHA1) 1918 | FAILED (Renegotiate-Client-Freely-2) 1919 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1920 | 1921 | stderr: 1922 | 1923 | PASSED (SigningHash-ServerKeyExchange-Verify-SHA1) 1924 | PASSED (SigningHash-ClientAuth-SHA256) 1925 | PASSED (SigningHash-ServerKeyExchange-Verify-SHA256) 1926 | PASSED (SigningHash-ServerKeyExchange-Sign-SHA256) 1927 | PASSED (SigningHash-ClientAuth-SHA384) 1928 | PASSED (SigningHash-ServerKeyExchange-Sign-SHA384) 1929 | PASSED (SigningHash-ServerKeyExchange-Sign-SHA512) 1930 | PASSED (SigningHash-ClientAuth-SHA512) 1931 | PASSED (SigningHash-ServerKeyExchange-Verify-SHA384) 1932 | PASSED (SigningHash-ServerKeyExchange-SignatureType) 1933 | FAILED (SigningHash-ClientAuth-Fallback) 1934 | unexpected failure: local error 'remote error: error decoding message', child error 'exit status 1', stdout: 1935 | 1936 | stderr: 1937 | 47463618076096:error:14169168:SSL routines:tls_process_certificate_request:signature algorithms error:ssl/statem/statem_clnt.c:1813: 1938 | 1939 | PASSED (Agree-Digest-Fallback) 1940 | PASSED (SigningHash-ClientAuth-SignatureType) 1941 | PASSED (SigningHash-ServerKeyExchange-Verify-SHA512) 1942 | PASSED (SigningHash-ServerKeyExchange-Fallback) 1943 | PASSED (Agree-Digest-SHA256) 1944 | PASSED (SigningHash-ServerKeyExchange-Enforced) 1945 | PASSED (SigningHash-ClientAuth-Enforced) 1946 | PASSED (Agree-Digest-SHA1) 1947 | PASSED (DTLS-Retransmit-Server-2) 1948 | FAILED (DTLS-Retransmit-Client-1) 1949 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1950 | 1951 | stderr: 1952 | 1953 | FAILED (DTLS-Retransmit-Client-3) 1954 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1955 | 1956 | stderr: 1957 | 1958 | FAILED (DTLS-Retransmit-Client-2) 1959 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1960 | 1961 | stderr: 1962 | 1963 | PASSED (DTLS-Retransmit-Server-3) 1964 | FAILED (DTLS-Retransmit-Client-4) 1965 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1966 | 1967 | stderr: 1968 | 1969 | PASSED (DTLS-Retransmit-Server-1) 1970 | FAILED (DTLS-Retransmit-Client-5) 1971 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1972 | 1973 | stderr: 1974 | 1975 | FAILED (DTLS-Retransmit-Client-7) 1976 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1977 | 1978 | stderr: 1979 | 1980 | PASSED (DTLS-Retransmit-Server-6) 1981 | FAILED (DTLS-Retransmit-Client-6) 1982 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1983 | 1984 | stderr: 1985 | 1986 | PASSED (Agree-Digest-Default) 1987 | PASSED (DTLS-Retransmit-Server-4) 1988 | PASSED (DTLS-Retransmit-Server-7) 1989 | PASSED (DTLS-Retransmit-Server-5) 1990 | FAILED (DTLS-Retransmit-Client-8) 1991 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1992 | 1993 | stderr: 1994 | 1995 | FAILED (DTLS-Retransmit-Client-9) 1996 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 1997 | 1998 | stderr: 1999 | 2000 | FAILED (DTLS-Retransmit-Client-10) 2001 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2002 | 2003 | stderr: 2004 | 2005 | PASSED (DTLS-Retransmit-Server-9) 2006 | PASSED (DTLS-Retransmit-Server-8) 2007 | PASSED (DTLS-Replay-NonMonotonic) 2008 | FAILED (DTLS-Retransmit-Client-11) 2009 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2010 | 2011 | stderr: 2012 | 2013 | PASSED (DTLS-Retransmit-Server-12) 2014 | FAILED (DTLS-Retransmit-Client-12) 2015 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2016 | 2017 | stderr: 2018 | 2019 | PASSED (DTLS-Replay-LargeGaps) 2020 | FAILED (DTLS-Retransmit-Timeout) 2021 | bad error (wanted ':READ_TIMEOUT_EXPIRED:' / ''): local error 'EOF', child error 'exit status 1', stdout: 2022 | 2023 | stderr: 2024 | 2025 | PASSED (DTLS-Retransmit-Server-10) 2026 | PASSED (DTLS-Retransmit-Server-11) 2027 | FAILED (DTLS-Retransmit-Fudge) 2028 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2029 | 2030 | stderr: 2031 | 2032 | PASSED (DTLS-Replay) 2033 | PASSED (ExportKeyingMaterial-NoContext-TLS1) 2034 | PASSED (DTLS-Retransmit-Fragmented) 2035 | PASSED (ExportKeyingMaterial-TLS11) 2036 | PASSED (ExportKeyingMaterial-TLS1) 2037 | PASSED (ExportKeyingMaterial-TLS12) 2038 | PASSED (ExportKeyingMaterial-EmptyContext-TLS1) 2039 | PASSED (ExportKeyingMaterial-Small-TLS1) 2040 | PASSED (ExportKeyingMaterial-Small-TLS11) 2041 | PASSED (ExportKeyingMaterial-NoContext-TLS11) 2042 | PASSED (ExportKeyingMaterial-NoContext-TLS12) 2043 | PASSED (ExportKeyingMaterial-EmptyContext-TLS12) 2044 | FAILED (ExportKeyingMaterial-SSL3) 2045 | bad error (wanted 'failed to export keying material' / ''): local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 2046 | 2047 | stderr: 2048 | 47154215644608:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 2049 | 2050 | PASSED (ExportKeyingMaterial-EmptyContext-TLS11) 2051 | PASSED (CustomExtensions-ParseError-Server) 2052 | PASSED (TLSUnique-Full-NoEMS-Server) 2053 | PASSED (TLSUnique-Full-EMS-Server) 2054 | PASSED (ExportKeyingMaterial-Small-TLS12) 2055 | PASSED (TLSUnique-Resume-EMS-Server) 2056 | PASSED (CustomExtensions-Server) 2057 | PASSED (TLSUnique-Resume-NoEMS-Server) 2058 | PASSED (TLSUnique-Resume-NoEMS-Client) 2059 | PASSED (TLSUnique-Full-NoEMS-Client) 2060 | PASSED (TLSUnique-Full-EMS-Client) 2061 | PASSED (CustomExtensions-FailAdd-Server) 2062 | PASSED (BadRSAClientKeyExchange-3) 2063 | PASSED (CustomExtensions-FailAdd-Client) 2064 | PASSED (BadRSAClientKeyExchange-1) 2065 | PASSED (CustomExtensions-NotCalled-Server) 2066 | PASSED (CustomExtensions-Skip-Server) 2067 | PASSED (CustomExtensions-Client) 2068 | PASSED (BadRSAClientKeyExchange-2) 2069 | PASSED (CustomExtensions-Skip-Client) 2070 | FAILED (UnknownExtension-Client) 2071 | unexpected success: local error 'none', child error 'none', stdout: 2072 | 2073 | stderr: 2074 | 2075 | PASSED (CustomExtensions-ParseError-Client) 2076 | PASSED (TLSUnique-Resume-EMS-Client) 2077 | PASSED (BadRSAClientKeyExchange-4) 2078 | PASSED (CurveTest-Server-P-256) 2079 | PASSED (KeyExchangeInfo-RSA-Client) 2080 | PASSED (CurveTest-Client-P-256) 2081 | PASSED (CurveTest-Server-X25519) 2082 | PASSED (UnknownCurve) 2083 | PASSED (CurveTest-Client-X25519) 2084 | PASSED (KeyExchangeInfo-ECDHE-Server) 2085 | PASSED (KeyExchangeInfo-ECDHE-Client) 2086 | FAILED (Basic-Client-RenewTicket-Sync) 2087 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2088 | 2089 | stderr: 2090 | new session was not cached, but we expected the opposite 2091 | 2092 | PASSED (Basic-Client-NoTicket-Sync) 2093 | PASSED (KeyExchangeInfo-DHE-Client) 2094 | PASSED (Basic-Client-Sync) 2095 | PASSED (Basic-Server-Sync) 2096 | PASSED (Basic-Server-EarlyCallback-Sync) 2097 | PASSED (Basic-Server-Implicit-Sync) 2098 | PASSED (Basic-Server-NoTickets-Sync) 2099 | PASSED (ClientAuth-NoCertificate-Client-Sync) 2100 | PASSED (Basic-Client-Implicit-Sync) 2101 | FAILED (ClientAuth-NoCertificate-Client-SSL3-Sync) 2102 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 2103 | 2104 | stderr: 2105 | 47611472195008:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 2106 | 2107 | PASSED (ClientAuth-NoCertificate-Server-Sync) 2108 | FAILED (ClientAuth-NoCertificate-Server-SSL3-Sync) 2109 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 2110 | 2111 | stderr: 2112 | 46951003454912:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 2113 | 2114 | PASSED (ClientAuth-NoCertificate-OldCallback-Sync) 2115 | PASSED (ClientAuth-OldCallback-Sync) 2116 | PASSED (KeyExchangeInfo-DHE-Server) 2117 | PASSED (ClientAuth-RSA-Client-Sync) 2118 | PASSED (ClientAuth-ECDSA-Client-Sync) 2119 | PASSED (SessionTicketsDisabled-Server-Sync) 2120 | PASSED (EmptyPSKHint-Client-Sync) 2121 | PASSED (OCSPStapling-Client-Sync) 2122 | PASSED (SessionTicketsDisabled-Client-Sync) 2123 | PASSED (EmptyPSKHint-Server-Sync) 2124 | PASSED (OCSPStapling-Server-Sync) 2125 | PASSED (CertificateVerificationFail-Sync) 2126 | PASSED (CurveTest-Client-P-384) 2127 | PASSED (ClientAuth-Server-Sync) 2128 | PASSED (CertificateVerificationSucceed-Sync) 2129 | PASSED (CurveTest-Server-P-384) 2130 | PASSED (CertificateVerificationSoftFail-Sync) 2131 | PASSED (FalseStart-Sync) 2132 | FAILED (Renegotiate-Client-Sync) 2133 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2134 | 2135 | stderr: 2136 | 2137 | PASSED (FalseStart-Implicit-Sync) 2138 | PASSED (FalseStart-ALPN-Sync) 2139 | PASSED (NPN-Client-Sync) 2140 | PASSED (ChannelID-Client-Sync) 2141 | PASSED (FalseStart-SessionTicketsDisabled-Sync) 2142 | PASSED (ChannelID-Server-Sync) 2143 | FAILED (NPN-Server-Sync) 2144 | unexpected failure: local error 'next proto mismatch: got , wanted bar', child error 'exit status 1', stdout: 2145 | 2146 | stderr: 2147 | negotiated next proto mismatch 2148 | 2149 | FAILED (SendV2ClientHello-Sync) 2150 | unexpected failure: local error 'remote error: error decoding message', child error 'exit status 1', stdout: 2151 | 2152 | stderr: 2153 | 47496315223488:error:1417D0BB:SSL routines:tls_process_client_hello:no compression specified:ssl/statem/statem_srvr.c:1282: 2154 | 2155 | PASSED (Basic-Server-NoTickets-DTLS-Sync) 2156 | PASSED (Shutdown-Runner-Sync) 2157 | FAILED (Shutdown-Shim-Sync) 2158 | unexpected failure: local error 'none', child error 'exit status 1', stdout: 2159 | 2160 | stderr: 2161 | Unexpected SSL_shutdown result: -1 != 1 2162 | 2163 | PASSED (Basic-Client-DTLS-Sync) 2164 | PASSED (Basic-Server-DTLS-Sync) 2165 | PASSED (Basic-Client-NoTicket-DTLS-Sync) 2166 | PASSED (Basic-Server-Implicit-DTLS-Sync) 2167 | PASSED (ClientAuth-NoCertificate-OldCallback-DTLS-Sync) 2168 | FAILED (Basic-Client-RenewTicket-DTLS-Sync) 2169 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2170 | 2171 | stderr: 2172 | new session was not cached, but we expected the opposite 2173 | 2174 | PASSED (Basic-Server-EarlyCallback-DTLS-Sync) 2175 | PASSED (Basic-Client-Implicit-DTLS-Sync) 2176 | PASSED (ClientAuth-OldCallback-DTLS-Sync) 2177 | PASSED (ClientAuth-NoCertificate-Server-DTLS-Sync) 2178 | PASSED (CurveTest-Server-P-521) 2179 | PASSED (EmptyPSKHint-Client-DTLS-Sync) 2180 | PASSED (ClientAuth-NoCertificate-Client-DTLS-Sync) 2181 | PASSED (OCSPStapling-Client-DTLS-Sync) 2182 | PASSED (SessionTicketsDisabled-Server-DTLS-Sync) 2183 | PASSED (OCSPStapling-Server-DTLS-Sync) 2184 | PASSED (EmptyPSKHint-Server-DTLS-Sync) 2185 | PASSED (CurveTest-Client-P-521) 2186 | PASSED (SessionTicketsDisabled-Client-DTLS-Sync) 2187 | PASSED (ClientAuth-Server-DTLS-Sync) 2188 | PASSED (ClientAuth-RSA-Client-DTLS-Sync) 2189 | PASSED (ClientAuth-ECDSA-Client-DTLS-Sync) 2190 | PASSED (CertificateVerificationSucceed-DTLS-Sync) 2191 | PASSED (SkipHelloVerifyRequest-DTLS-Sync) 2192 | PASSED (CertificateVerificationSoftFail-DTLS-Sync) 2193 | PASSED (CertificateVerificationFail-DTLS-Sync) 2194 | PASSED (Basic-Client-NoTicket-Sync-SplitHandshakeRecords) 2195 | PASSED (Basic-Server-EarlyCallback-Sync-SplitHandshakeRecords) 2196 | PASSED (Basic-Client-Sync-SplitHandshakeRecords) 2197 | FAILED (Basic-Client-RenewTicket-Sync-SplitHandshakeRecords) 2198 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2199 | 2200 | stderr: 2201 | new session was not cached, but we expected the opposite 2202 | 2203 | PASSED (Basic-Server-Implicit-Sync-SplitHandshakeRecords) 2204 | PASSED (ClientAuth-NoCertificate-Server-Sync-SplitHandshakeRecords) 2205 | PASSED (Basic-Server-NoTickets-Sync-SplitHandshakeRecords) 2206 | FAILED (ClientAuth-NoCertificate-Client-SSL3-Sync-SplitHandshakeRecords) 2207 | unexpected failure: local error 'tls: received record with version 303 when expecting version 300', child error 'exit status 1', stdout: 2208 | 2209 | stderr: 2210 | 47443598958016:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 2211 | 2212 | FAILED (ClientAuth-NoCertificate-Server-SSL3-Sync-SplitHandshakeRecords) 2213 | unexpected failure: local error 'remote error: handshake failure', child error 'exit status 1', stdout: 2214 | 2215 | stderr: 2216 | 47865819135424:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 2217 | 2218 | PASSED (ClientAuth-NoCertificate-OldCallback-Sync-SplitHandshakeRecords) 2219 | PASSED (ClientAuth-OldCallback-Sync-SplitHandshakeRecords) 2220 | PASSED (Basic-Client-Implicit-Sync-SplitHandshakeRecords) 2221 | PASSED (Basic-Server-Sync-SplitHandshakeRecords) 2222 | PASSED (ClientAuth-NoCertificate-Client-Sync-SplitHandshakeRecords) 2223 | PASSED (OCSPStapling-Server-Sync-SplitHandshakeRecords) 2224 | PASSED (OCSPStapling-Client-Sync-SplitHandshakeRecords) 2225 | PASSED (EmptyPSKHint-Server-Sync-SplitHandshakeRecords) 2226 | PASSED (EmptyPSKHint-Client-Sync-SplitHandshakeRecords) 2227 | PASSED (SessionTicketsDisabled-Server-Sync-SplitHandshakeRecords) 2228 | PASSED (CertificateVerificationFail-Sync-SplitHandshakeRecords) 2229 | PASSED (FalseStart-Sync-SplitHandshakeRecords) 2230 | PASSED (SessionTicketsDisabled-Client-Sync-SplitHandshakeRecords) 2231 | PASSED (ClientAuth-Server-Sync-SplitHandshakeRecords) 2232 | PASSED (ClientAuth-RSA-Client-Sync-SplitHandshakeRecords) 2233 | PASSED (FalseStart-ALPN-Sync-SplitHandshakeRecords) 2234 | PASSED (FalseStart-Implicit-Sync-SplitHandshakeRecords) 2235 | PASSED (FalseStart-SessionTicketsDisabled-Sync-SplitHandshakeRecords) 2236 | FAILED (NPN-Server-Sync-SplitHandshakeRecords) 2237 | unexpected failure: local error 'next proto mismatch: got , wanted bar', child error 'exit status 1', stdout: 2238 | 2239 | stderr: 2240 | negotiated next proto mismatch 2241 | 2242 | FAILED (SendV2ClientHello-Sync-SplitHandshakeRecords) 2243 | unexpected failure: local error 'remote error: error decoding message', child error 'exit status 1', stdout: 2244 | 2245 | stderr: 2246 | 46938049093056:error:1417D0BB:SSL routines:tls_process_client_hello:no compression specified:ssl/statem/statem_srvr.c:1282: 2247 | 2248 | PASSED (ChannelID-Client-Sync-SplitHandshakeRecords) 2249 | PASSED (ChannelID-Server-Sync-SplitHandshakeRecords) 2250 | PASSED (ClientAuth-ECDSA-Client-Sync-SplitHandshakeRecords) 2251 | PASSED (CertificateVerificationSucceed-Sync-SplitHandshakeRecords) 2252 | PASSED (CertificateVerificationSoftFail-Sync-SplitHandshakeRecords) 2253 | FAILED (Shutdown-Shim-Sync-SplitHandshakeRecords) 2254 | unexpected failure: local error 'none', child error 'exit status 1', stdout: 2255 | 2256 | stderr: 2257 | Unexpected SSL_shutdown result: -1 != 1 2258 | 2259 | FAILED (Renegotiate-Client-Sync-SplitHandshakeRecords) 2260 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2261 | 2262 | stderr: 2263 | 2264 | PASSED (Basic-Server-EarlyCallback-DTLS-Sync-SplitHandshakeRecords) 2265 | PASSED (Shutdown-Runner-Sync-SplitHandshakeRecords) 2266 | PASSED (NPN-Client-Sync-SplitHandshakeRecords) 2267 | FAILED (Basic-Server-DTLS-Sync-SplitHandshakeRecords) 2268 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 2269 | 2270 | stderr: 2271 | 2272 | PASSED (ClientAuth-NoCertificate-OldCallback-DTLS-Sync-SplitHandshakeRecords) 2273 | FAILED (Basic-Client-NoTicket-DTLS-Sync-SplitHandshakeRecords) 2274 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2275 | 2276 | stderr: 2277 | 2278 | FAILED (Basic-Client-RenewTicket-DTLS-Sync-SplitHandshakeRecords) 2279 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2280 | 2281 | stderr: 2282 | 2283 | FAILED (Basic-Server-Implicit-DTLS-Sync-SplitHandshakeRecords) 2284 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 2285 | 2286 | stderr: 2287 | 2288 | FAILED (Basic-Client-Implicit-DTLS-Sync-SplitHandshakeRecords) 2289 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2290 | 2291 | stderr: 2292 | 2293 | PASSED (ClientAuth-OldCallback-DTLS-Sync-SplitHandshakeRecords) 2294 | PASSED (SessionTicketsDisabled-Server-DTLS-Sync-SplitHandshakeRecords) 2295 | PASSED (EmptyPSKHint-Client-DTLS-Sync-SplitHandshakeRecords) 2296 | FAILED (ClientAuth-ECDSA-Client-DTLS-Sync-SplitHandshakeRecords) 2297 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 2298 | 2299 | stderr: 2300 | 2301 | FAILED (Basic-Client-DTLS-Sync-SplitHandshakeRecords) 2302 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2303 | 2304 | stderr: 2305 | 2306 | PASSED (Basic-Server-NoTickets-DTLS-Sync-SplitHandshakeRecords) 2307 | FAILED (ClientAuth-NoCertificate-Server-DTLS-Sync-SplitHandshakeRecords) 2308 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 2309 | 2310 | stderr: 2311 | 2312 | PASSED (OCSPStapling-Client-DTLS-Sync-SplitHandshakeRecords) 2313 | PASSED (OCSPStapling-Server-DTLS-Sync-SplitHandshakeRecords) 2314 | PASSED (SessionTicketsDisabled-Client-DTLS-Sync-SplitHandshakeRecords) 2315 | PASSED (ClientAuth-NoCertificate-Client-DTLS-Sync-SplitHandshakeRecords) 2316 | PASSED (EmptyPSKHint-Server-DTLS-Sync-SplitHandshakeRecords) 2317 | PASSED (ClientAuth-RSA-Client-DTLS-Sync-SplitHandshakeRecords) 2318 | PASSED (CertificateVerificationSoftFail-DTLS-Sync-SplitHandshakeRecords) 2319 | PASSED (CertificateVerificationFail-DTLS-Sync-SplitHandshakeRecords) 2320 | PASSED (Basic-Client-Implicit-Async) 2321 | PASSED (Basic-Server-EarlyCallback-Async) 2322 | PASSED (Basic-Client-Async) 2323 | PASSED (ClientAuth-Server-DTLS-Sync-SplitHandshakeRecords) 2324 | PASSED (Basic-Server-Async) 2325 | FAILED (Basic-Client-RenewTicket-Async) 2326 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2327 | 2328 | stderr: 2329 | new session was not cached, but we expected the opposite 2330 | 2331 | PASSED (Basic-Server-Implicit-Async) 2332 | PASSED (Basic-Client-NoTicket-Async) 2333 | PASSED (ClientAuth-NoCertificate-OldCallback-Async) 2334 | FAILED (ClientAuth-NoCertificate-Server-SSL3-Async) 2335 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2336 | 2337 | stderr: 2338 | 47311055662528:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 2339 | 2340 | PASSED (ClientAuth-OldCallback-Async) 2341 | PASSED (Basic-Server-NoTickets-Async) 2342 | PASSED (SkipHelloVerifyRequest-DTLS-Sync-SplitHandshakeRecords) 2343 | PASSED (ClientAuth-NoCertificate-Server-Async) 2344 | PASSED (CertificateVerificationSucceed-DTLS-Sync-SplitHandshakeRecords) 2345 | PASSED (ClientAuth-NoCertificate-Client-Async) 2346 | PASSED (ClientAuth-ECDSA-Client-Async) 2347 | PASSED (Basic-Server-RSA-Async) 2348 | FAILED (ClientAuth-NoCertificate-Client-SSL3-Async) 2349 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2350 | 2351 | stderr: 2352 | 47317467864512:error:14171102:SSL routines:tls_process_server_hello:unsupported protocol:ssl/statem/statem_clnt.c:1044: 2353 | 2354 | PASSED (SessionTicketsDisabled-Server-Async) 2355 | PASSED (Basic-Server-ECDHE-ECDSA-Async) 2356 | PASSED (EmptyPSKHint-Server-Async) 2357 | PASSED (ClientAuth-RSA-Client-Async) 2358 | PASSED (OCSPStapling-Client-Async) 2359 | PASSED (EmptyPSKHint-Client-Async) 2360 | PASSED (Basic-Server-ECDHE-RSA-Async) 2361 | PASSED (ClientAuth-Server-Async) 2362 | PASSED (FalseStart-Async) 2363 | PASSED (SessionTicketsDisabled-Client-Async) 2364 | PASSED (OCSPStapling-Server-Async) 2365 | PASSED (FalseStart-ALPN-Async) 2366 | PASSED (FalseStart-Implicit-Async) 2367 | FAILED (SendV2ClientHello-Async) 2368 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2369 | 2370 | stderr: 2371 | 47289534672320:error:1417D0BB:SSL routines:tls_process_client_hello:no compression specified:ssl/statem/statem_srvr.c:1282: 2372 | 2373 | PASSED (CertificateVerificationFail-Async) 2374 | PASSED (ChannelID-Client-Async) 2375 | PASSED (CertificateVerificationSucceed-Async) 2376 | FAILED (NPN-Server-Async) 2377 | unexpected failure: local error 'next proto mismatch: got , wanted bar', child error 'exit status 1', stdout: 2378 | 2379 | stderr: 2380 | negotiated next proto mismatch 2381 | 2382 | PASSED (FalseStart-SessionTicketsDisabled-Async) 2383 | PASSED (ChannelID-Server-Async) 2384 | PASSED (NPN-Client-Async) 2385 | FAILED (Basic-Client-RenewTicket-DTLS-Async) 2386 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2387 | 2388 | stderr: 2389 | 2390 | FAILED (Basic-Client-DTLS-Async) 2391 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2392 | 2393 | stderr: 2394 | 2395 | FAILED (Basic-Client-NoTicket-DTLS-Async) 2396 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2397 | 2398 | stderr: 2399 | 2400 | PASSED (CertificateVerificationSoftFail-Async) 2401 | PASSED (Renegotiate-Client-Async) 2402 | PASSED (Basic-Server-EarlyCallback-DTLS-Async) 2403 | FAILED (ClientAuth-NoCertificate-Client-DTLS-Async) 2404 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2405 | 2406 | stderr: 2407 | 2408 | FAILED (ClientAuth-RSA-Client-DTLS-Async) 2409 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2410 | 2411 | stderr: 2412 | 2413 | FAILED (ClientAuth-ECDSA-Client-DTLS-Async) 2414 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2415 | 2416 | stderr: 2417 | 2418 | PASSED (Basic-Server-NoTickets-DTLS-Async) 2419 | PASSED (Basic-Server-DTLS-Async) 2420 | FAILED (Shutdown-Shim-Async) 2421 | unexpected failure: local error 'none', child error 'exit status 1', stdout: 2422 | 2423 | stderr: 2424 | Unexpected SSL_shutdown result: -1 != 1 2425 | 2426 | PASSED (Basic-Client-Implicit-DTLS-Async) 2427 | PASSED (Shutdown-Runner-Async) 2428 | PASSED (ClientAuth-NoCertificate-OldCallback-DTLS-Async) 2429 | PASSED (ClientAuth-NoCertificate-Server-DTLS-Async) 2430 | PASSED (ClientAuth-OldCallback-DTLS-Async) 2431 | FAILED (EmptyPSKHint-Client-DTLS-Async) 2432 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2433 | 2434 | stderr: 2435 | 2436 | PASSED (SessionTicketsDisabled-Server-DTLS-Async) 2437 | PASSED (OCSPStapling-Server-DTLS-Async) 2438 | PASSED (Basic-Server-RSA-DTLS-Async) 2439 | PASSED (Basic-Server-ECDHE-RSA-DTLS-Async) 2440 | PASSED (OCSPStapling-Client-DTLS-Async) 2441 | PASSED (Basic-Server-ECDHE-ECDSA-DTLS-Async) 2442 | FAILED (SessionTicketsDisabled-Client-DTLS-Async) 2443 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2444 | 2445 | stderr: 2446 | 2447 | PASSED (EmptyPSKHint-Server-DTLS-Async) 2448 | FAILED (CertificateVerificationSucceed-DTLS-Async) 2449 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2450 | 2451 | stderr: 2452 | 2453 | PASSED (Basic-Server-Implicit-DTLS-Async) 2454 | FAILED (CertificateVerificationSoftFail-DTLS-Async) 2455 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2456 | 2457 | stderr: 2458 | 2459 | FAILED (CertificateVerificationFail-DTLS-Async) 2460 | bad error (wanted ':CERTIFICATE_VERIFY_FAILED:' / ''): local error 'EOF', child error 'exit status 1', stdout: 2461 | 2462 | stderr: 2463 | 2464 | FAILED (SkipHelloVerifyRequest-DTLS-Async) 2465 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2466 | 2467 | stderr: 2468 | 2469 | PASSED (Basic-Server-EarlyCallback-Async-SplitHandshakeRecords) 2470 | PASSED (ClientAuth-Server-DTLS-Async) 2471 | FAILED (Basic-Server-Implicit-Async-SplitHandshakeRecords) 2472 | unexpected failure: local error 'remote error: unexpected message', child error 'exit status 1', stdout: 2473 | 2474 | stderr: 2475 | 47848024341952:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2476 | 2477 | FAILED (Basic-Server-NoTickets-Async-SplitHandshakeRecords) 2478 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2479 | 2480 | stderr: 2481 | 47216607677888:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2482 | 2483 | FAILED (ClientAuth-NoCertificate-Server-Async-SplitHandshakeRecords) 2484 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2485 | 2486 | stderr: 2487 | 47100009467328:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2488 | 2489 | PASSED (ClientAuth-NoCertificate-OldCallback-Async-SplitHandshakeRecords) 2490 | FAILED (ClientAuth-NoCertificate-Server-SSL3-Async-SplitHandshakeRecords) 2491 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2492 | 2493 | stderr: 2494 | 47640383663552:error:1417D18C:SSL routines:tls_process_client_hello:version too low:ssl/statem/statem_srvr.c:1053: 2495 | 2496 | FAILED (Basic-Server-Async-SplitHandshakeRecords) 2497 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2498 | 2499 | stderr: 2500 | 47137002450368:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2501 | 2502 | PASSED (ClientAuth-OldCallback-Async-SplitHandshakeRecords) 2503 | FAILED (Basic-Server-RSA-Async-SplitHandshakeRecords) 2504 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2505 | 2506 | stderr: 2507 | 47579399425472:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2508 | 2509 | FAILED (Basic-Server-ECDHE-ECDSA-Async-SplitHandshakeRecords) 2510 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2511 | 2512 | stderr: 2513 | 47935990042048:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2514 | 2515 | FAILED (Basic-Server-ECDHE-RSA-Async-SplitHandshakeRecords) 2516 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2517 | 2518 | stderr: 2519 | 47463475944896:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2520 | 2521 | FAILED (SessionTicketsDisabled-Server-Async-SplitHandshakeRecords) 2522 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2523 | 2524 | stderr: 2525 | 47966247337408:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2526 | 2527 | FAILED (ClientAuth-Server-Async-SplitHandshakeRecords) 2528 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2529 | 2530 | stderr: 2531 | 46921002843584:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2532 | 2533 | FAILED (EmptyPSKHint-Server-Async-SplitHandshakeRecords) 2534 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2535 | 2536 | stderr: 2537 | 47534889029056:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2538 | 2539 | PASSED (OCSPStapling-Client-Async-SplitHandshakeRecords) 2540 | PASSED (OCSPStapling-Server-Async-SplitHandshakeRecords) 2541 | FAILED (MixCompleteMessageWithFragments-DTLS) 2542 | unexpected failure: local error 'read tcp4 127.0.0.1:56625->127.0.0.1:37811: i/o timeout', child error 'exit status 1', stdout: 2543 | 2544 | stderr: 2545 | dtls1_retransmit_message() failed 2546 | 2547 | FAILED (Basic-Client-NoTicket-Async-SplitHandshakeRecords) 2548 | unexpected failure: local error 'read tcp4 127.0.0.1:33745->127.0.0.1:54788: i/o timeout', child error 'exit status 1', stdout: 2549 | 2550 | stderr: 2551 | 2552 | FAILED (Basic-Client-RenewTicket-Async-SplitHandshakeRecords) 2553 | unexpected failure: local error 'read tcp4 127.0.0.1:45472->127.0.0.1:54741: i/o timeout', child error 'exit status 1', stdout: 2554 | 2555 | stderr: 2556 | 2557 | FAILED (Basic-Client-Implicit-Async-SplitHandshakeRecords) 2558 | unexpected failure: local error 'read tcp4 127.0.0.1:57953->127.0.0.1:56078: i/o timeout', child error 'exit status 1', stdout: 2559 | 2560 | stderr: 2561 | 2562 | FAILED (ClientAuth-NoCertificate-Client-Async-SplitHandshakeRecords) 2563 | unexpected failure: local error 'read tcp4 127.0.0.1:41980->127.0.0.1:48314: i/o timeout', child error 'exit status 1', stdout: 2564 | 2565 | stderr: 2566 | 2567 | FAILED (Basic-Client-Async-SplitHandshakeRecords) 2568 | unexpected failure: local error 'read tcp4 127.0.0.1:51445->127.0.0.1:39369: i/o timeout', child error 'exit status 1', stdout: 2569 | 2570 | stderr: 2571 | 2572 | FAILED (ClientAuth-NoCertificate-Client-SSL3-Async-SplitHandshakeRecords) 2573 | unexpected failure: local error 'read tcp4 127.0.0.1:58821->127.0.0.1:50648: i/o timeout', child error 'exit status 1', stdout: 2574 | 2575 | stderr: 2576 | 2577 | PASSED (FalseStart-Async-SplitHandshakeRecords) 2578 | PASSED (FalseStart-ALPN-Async-SplitHandshakeRecords) 2579 | PASSED (FalseStart-Implicit-Async-SplitHandshakeRecords) 2580 | FAILED (ClientAuth-RSA-Client-Async-SplitHandshakeRecords) 2581 | unexpected failure: local error 'read tcp4 127.0.0.1:50063->127.0.0.1:56697: i/o timeout', child error 'exit status 1', stdout: 2582 | 2583 | stderr: 2584 | 2585 | PASSED (FalseStart-SessionTicketsDisabled-Async-SplitHandshakeRecords) 2586 | FAILED (NPN-Server-Async-SplitHandshakeRecords) 2587 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2588 | 2589 | stderr: 2590 | 47098855226816:error:141600F4:SSL routines:read_state_machine:unexpected message:ssl/statem/statem.c:580: 2591 | 2592 | PASSED (ChannelID-Client-Async-SplitHandshakeRecords) 2593 | FAILED (SendV2ClientHello-Async-SplitHandshakeRecords) 2594 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2595 | 2596 | stderr: 2597 | 47137568206272:error:1417D0BB:SSL routines:tls_process_client_hello:no compression specified:ssl/statem/statem_srvr.c:1282: 2598 | 2599 | PASSED (ChannelID-Server-Async-SplitHandshakeRecords) 2600 | FAILED (ClientAuth-ECDSA-Client-Async-SplitHandshakeRecords) 2601 | unexpected failure: local error 'read tcp4 127.0.0.1:58894->127.0.0.1:38680: i/o timeout', child error 'exit status 1', stdout: 2602 | 2603 | stderr: 2604 | 2605 | FAILED (Basic-Client-DTLS-Async-SplitHandshakeRecords) 2606 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2607 | 2608 | stderr: 2609 | 2610 | FAILED (Basic-Client-RenewTicket-DTLS-Async-SplitHandshakeRecords) 2611 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2612 | 2613 | stderr: 2614 | 2615 | FAILED (Basic-Client-NoTicket-DTLS-Async-SplitHandshakeRecords) 2616 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2617 | 2618 | stderr: 2619 | 2620 | FAILED (SessionTicketsDisabled-Client-Async-SplitHandshakeRecords) 2621 | unexpected failure: local error 'read tcp4 127.0.0.1:56318->127.0.0.1:50440: i/o timeout', child error 'exit status 1', stdout: 2622 | 2623 | stderr: 2624 | 2625 | FAILED (Basic-Server-DTLS-Async-SplitHandshakeRecords) 2626 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 2627 | 2628 | stderr: 2629 | 2630 | PASSED (Basic-Server-EarlyCallback-DTLS-Async-SplitHandshakeRecords) 2631 | FAILED (Basic-Server-Implicit-DTLS-Async-SplitHandshakeRecords) 2632 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 2633 | 2634 | stderr: 2635 | 2636 | FAILED (EmptyPSKHint-Client-Async-SplitHandshakeRecords) 2637 | unexpected failure: local error 'read tcp4 127.0.0.1:60862->127.0.0.1:46563: i/o timeout', child error 'exit status 1', stdout: 2638 | 2639 | stderr: 2640 | 2641 | FAILED (ClientAuth-NoCertificate-Client-DTLS-Async-SplitHandshakeRecords) 2642 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2643 | 2644 | stderr: 2645 | 2646 | PASSED (Basic-Server-NoTickets-DTLS-Async-SplitHandshakeRecords) 2647 | FAILED (ClientAuth-RSA-Client-DTLS-Async-SplitHandshakeRecords) 2648 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2649 | 2650 | stderr: 2651 | 2652 | PASSED (ClientAuth-NoCertificate-OldCallback-DTLS-Async-SplitHandshakeRecords) 2653 | FAILED (ClientAuth-ECDSA-Client-DTLS-Async-SplitHandshakeRecords) 2654 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2655 | 2656 | stderr: 2657 | 2658 | PASSED (ClientAuth-OldCallback-DTLS-Async-SplitHandshakeRecords) 2659 | FAILED (ClientAuth-NoCertificate-Server-DTLS-Async-SplitHandshakeRecords) 2660 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 2661 | 2662 | stderr: 2663 | 2664 | FAILED (Basic-Server-RSA-DTLS-Async-SplitHandshakeRecords) 2665 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 2666 | 2667 | stderr: 2668 | 2669 | FAILED (Basic-Client-Implicit-DTLS-Async-SplitHandshakeRecords) 2670 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2671 | 2672 | stderr: 2673 | 2674 | FAILED (Basic-Server-ECDHE-RSA-DTLS-Async-SplitHandshakeRecords) 2675 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 2676 | 2677 | stderr: 2678 | 2679 | FAILED (SessionTicketsDisabled-Client-DTLS-Async-SplitHandshakeRecords) 2680 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2681 | 2682 | stderr: 2683 | 2684 | FAILED (CertificateVerificationSucceed-Async-SplitHandshakeRecords) 2685 | unexpected failure: local error 'read tcp4 127.0.0.1:50091->127.0.0.1:43731: i/o timeout', child error 'exit status 1', stdout: 2686 | 2687 | stderr: 2688 | 2689 | FAILED (Basic-Server-ECDHE-ECDSA-DTLS-Async-SplitHandshakeRecords) 2690 | unexpected failure: local error 'dtls: exceeded maximum packet length', child error 'exit status 1', stdout: 2691 | 2692 | stderr: 2693 | 2694 | PASSED (OCSPStapling-Client-DTLS-Async-SplitHandshakeRecords) 2695 | FAILED (EmptyPSKHint-Client-DTLS-Async-SplitHandshakeRecords) 2696 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2697 | 2698 | stderr: 2699 | 2700 | FAILED (CertificateVerificationSucceed-DTLS-Async-SplitHandshakeRecords) 2701 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2702 | 2703 | stderr: 2704 | 2705 | FAILED (CertificateVerificationFail-DTLS-Async-SplitHandshakeRecords) 2706 | bad error (wanted ':CERTIFICATE_VERIFY_FAILED:' / ''): local error 'EOF', child error 'exit status 1', stdout: 2707 | 2708 | stderr: 2709 | 2710 | PASSED (SessionTicketsDisabled-Server-DTLS-Async-SplitHandshakeRecords) 2711 | PASSED (OCSPStapling-Server-DTLS-Async-SplitHandshakeRecords) 2712 | PASSED (EmptyPSKHint-Server-DTLS-Async-SplitHandshakeRecords) 2713 | FAILED (CertificateVerificationSoftFail-DTLS-Async-SplitHandshakeRecords) 2714 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2715 | 2716 | stderr: 2717 | 2718 | PASSED (ClientAuth-Server-DTLS-Async-SplitHandshakeRecords) 2719 | FAILED (SkipHelloVerifyRequest-DTLS-Async-SplitHandshakeRecords) 2720 | unexpected failure: local error 'EOF', child error 'exit status 1', stdout: 2721 | 2722 | stderr: 2723 | 2724 | FAILED (CertificateVerificationFail-Async-SplitHandshakeRecords) 2725 | bad error (wanted ':CERTIFICATE_VERIFY_FAILED:' / ''): local error 'read tcp4 127.0.0.1:44489->127.0.0.1:49525: i/o timeout', child error 'exit status 1', stdout: 2726 | 2727 | stderr: 2728 | 2729 | FAILED (CertificateVerificationSoftFail-Async-SplitHandshakeRecords) 2730 | unexpected failure: local error 'read tcp4 127.0.0.1:47223->127.0.0.1:33462: i/o timeout', child error 'exit status 1', stdout: 2731 | 2732 | stderr: 2733 | 2734 | FAILED (Renegotiate-Client-Async-SplitHandshakeRecords) 2735 | unexpected failure: local error 'read tcp4 127.0.0.1:35361->127.0.0.1:43288: i/o timeout', child error 'exit status 1', stdout: 2736 | 2737 | stderr: 2738 | 2739 | FAILED (NPN-Client-Async-SplitHandshakeRecords) 2740 | unexpected failure: local error 'read tcp4 127.0.0.1:60610->127.0.0.1:35302: i/o timeout', child error 'exit status 1', stdout: 2741 | 2742 | stderr: 2743 | 2744 | FAILED (Shutdown-Shim-Async-SplitHandshakeRecords) 2745 | unexpected failure: local error 'read tcp4 127.0.0.1:57280->127.0.0.1:34498: i/o timeout', child error 'exit status 1', stdout: 2746 | 2747 | stderr: 2748 | 2749 | FAILED (Shutdown-Runner-Async-SplitHandshakeRecords) 2750 | unexpected failure: local error 'read tcp4 127.0.0.1:55673->127.0.0.1:48960: i/o timeout', child error 'exit status 1', stdout: 2751 | 2752 | stderr: 2753 | 2754 | 2755 | exit status 1 2756 | FAIL _/usr/local/google/home/ekasper/gob/openssl-tests/boringssl/ssl/test/runner 32.043s 2757 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # How to contribute # 2 | 3 | ## Contributor License Agreement ## 4 | 5 | Contributions to any Google project must be accompanied by a Contributor 6 | License Agreement. This is not a copyright **assignment**, it simply gives 7 | Google permission to use and redistribute your contributions as part of the 8 | project. 9 | 10 | * If you are an individual writing original source code and you're sure you 11 | own the intellectual property, then you'll need to sign an [individual 12 | CLA](https://developers.google.com/open-source/cla/individual). 13 | 14 | * If you work for a company that wants to allow you to contribute your work, 15 | then you'll need to sign a 16 | [corporate CLA](https://developers.google.com/open-source/cla/corporate). 17 | 18 | You generally only need to submit a CLA once, so if you've already submitted 19 | one (even if it was for a different project), you probably don't need to do it 20 | again. 21 | 22 | ## Contributing to OpenSSL ## 23 | 24 | If you want to fix a test failure shown by these tests, please contribute to 25 | OpenSSL directly, see 26 | [https://github.com/openssl/openssl/](https://github.com/openssl/openssl/). 27 | 28 | ## Contributing to BoringSSL ## 29 | 30 | See [https://boringssl.googlesource.com/boringssl/+/HEAD/CONTRIBUTING.md](https://boringssl.googlesource.com/boringssl/+/HEAD/CONTRIBUTING.md). 31 | 32 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | 2 | Apache License 3 | Version 2.0, January 2004 4 | http://www.apache.org/licenses/ 5 | 6 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 7 | 8 | 1. Definitions. 9 | 10 | "License" shall mean the terms and conditions for use, reproduction, 11 | and distribution as defined by Sections 1 through 9 of this document. 12 | 13 | "Licensor" shall mean the copyright owner or entity authorized by 14 | the copyright owner that is granting the License. 15 | 16 | "Legal Entity" shall mean the union of the acting entity and all 17 | other entities that control, are controlled by, or are under common 18 | control with that entity. For the purposes of this definition, 19 | "control" means (i) the power, direct or indirect, to cause the 20 | direction or management of such entity, whether by contract or 21 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 22 | outstanding shares, or (iii) beneficial ownership of such entity. 23 | 24 | "You" (or "Your") shall mean an individual or Legal Entity 25 | exercising permissions granted by this License. 26 | 27 | "Source" form shall mean the preferred form for making modifications, 28 | including but not limited to software source code, documentation 29 | source, and configuration files. 30 | 31 | "Object" form shall mean any form resulting from mechanical 32 | transformation or translation of a Source form, including but 33 | not limited to compiled object code, generated documentation, 34 | and conversions to other media types. 35 | 36 | "Work" shall mean the work of authorship, whether in Source or 37 | Object form, made available under the License, as indicated by a 38 | copyright notice that is included in or attached to the work 39 | (an example is provided in the Appendix below). 40 | 41 | "Derivative Works" shall mean any work, whether in Source or Object 42 | form, that is based on (or derived from) the Work and for which the 43 | editorial revisions, annotations, elaborations, or other modifications 44 | represent, as a whole, an original work of authorship. For the purposes 45 | of this License, Derivative Works shall not include works that remain 46 | separable from, or merely link (or bind by name) to the interfaces of, 47 | the Work and Derivative Works thereof. 48 | 49 | "Contribution" shall mean any work of authorship, including 50 | the original version of the Work and any modifications or additions 51 | to that Work or Derivative Works thereof, that is intentionally 52 | submitted to Licensor for inclusion in the Work by the copyright owner 53 | or by an individual or Legal Entity authorized to submit on behalf of 54 | the copyright owner. For the purposes of this definition, "submitted" 55 | means any form of electronic, verbal, or written communication sent 56 | to the Licensor or its representatives, including but not limited to 57 | communication on electronic mailing lists, source code control systems, 58 | and issue tracking systems that are managed by, or on behalf of, the 59 | Licensor for the purpose of discussing and improving the Work, but 60 | excluding communication that is conspicuously marked or otherwise 61 | designated in writing by the copyright owner as "Not a Contribution." 62 | 63 | "Contributor" shall mean Licensor and any individual or Legal Entity 64 | on behalf of whom a Contribution has been received by Licensor and 65 | subsequently incorporated within the Work. 66 | 67 | 2. Grant of Copyright License. Subject to the terms and conditions of 68 | this License, each Contributor hereby grants to You a perpetual, 69 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 70 | copyright license to reproduce, prepare Derivative Works of, 71 | publicly display, publicly perform, sublicense, and distribute the 72 | Work and such Derivative Works in Source or Object form. 73 | 74 | 3. Grant of Patent License. Subject to the terms and conditions of 75 | this License, each Contributor hereby grants to You a perpetual, 76 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 77 | (except as stated in this section) patent license to make, have made, 78 | use, offer to sell, sell, import, and otherwise transfer the Work, 79 | where such license applies only to those patent claims licensable 80 | by such Contributor that are necessarily infringed by their 81 | Contribution(s) alone or by combination of their Contribution(s) 82 | with the Work to which such Contribution(s) was submitted. If You 83 | institute patent litigation against any entity (including a 84 | cross-claim or counterclaim in a lawsuit) alleging that the Work 85 | or a Contribution incorporated within the Work constitutes direct 86 | or contributory patent infringement, then any patent licenses 87 | granted to You under this License for that Work shall terminate 88 | as of the date such litigation is filed. 89 | 90 | 4. Redistribution. You may reproduce and distribute copies of the 91 | Work or Derivative Works thereof in any medium, with or without 92 | modifications, and in Source or Object form, provided that You 93 | meet the following conditions: 94 | 95 | (a) You must give any other recipients of the Work or 96 | Derivative Works a copy of this License; and 97 | 98 | (b) You must cause any modified files to carry prominent notices 99 | stating that You changed the files; and 100 | 101 | (c) You must retain, in the Source form of any Derivative Works 102 | that You distribute, all copyright, patent, trademark, and 103 | attribution notices from the Source form of the Work, 104 | excluding those notices that do not pertain to any part of 105 | the Derivative Works; and 106 | 107 | (d) If the Work includes a "NOTICE" text file as part of its 108 | distribution, then any Derivative Works that You distribute must 109 | include a readable copy of the attribution notices contained 110 | within such NOTICE file, excluding those notices that do not 111 | pertain to any part of the Derivative Works, in at least one 112 | of the following places: within a NOTICE text file distributed 113 | as part of the Derivative Works; within the Source form or 114 | documentation, if provided along with the Derivative Works; or, 115 | within a display generated by the Derivative Works, if and 116 | wherever such third-party notices normally appear. The contents 117 | of the NOTICE file are for informational purposes only and 118 | do not modify the License. You may add Your own attribution 119 | notices within Derivative Works that You distribute, alongside 120 | or as an addendum to the NOTICE text from the Work, provided 121 | that such additional attribution notices cannot be construed 122 | as modifying the License. 123 | 124 | You may add Your own copyright statement to Your modifications and 125 | may provide additional or different license terms and conditions 126 | for use, reproduction, or distribution of Your modifications, or 127 | for any such Derivative Works as a whole, provided Your use, 128 | reproduction, and distribution of the Work otherwise complies with 129 | the conditions stated in this License. 130 | 131 | 5. Submission of Contributions. Unless You explicitly state otherwise, 132 | any Contribution intentionally submitted for inclusion in the Work 133 | by You to the Licensor shall be under the terms and conditions of 134 | this License, without any additional terms or conditions. 135 | Notwithstanding the above, nothing herein shall supersede or modify 136 | the terms of any separate license agreement you may have executed 137 | with Licensor regarding such Contributions. 138 | 139 | 6. Trademarks. This License does not grant permission to use the trade 140 | names, trademarks, service marks, or product names of the Licensor, 141 | except as required for reasonable and customary use in describing the 142 | origin of the Work and reproducing the content of the NOTICE file. 143 | 144 | 7. Disclaimer of Warranty. Unless required by applicable law or 145 | agreed to in writing, Licensor provides the Work (and each 146 | Contributor provides its Contributions) on an "AS IS" BASIS, 147 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 148 | implied, including, without limitation, any warranties or conditions 149 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 150 | PARTICULAR PURPOSE. You are solely responsible for determining the 151 | appropriateness of using or redistributing the Work and assume any 152 | risks associated with Your exercise of permissions under this License. 153 | 154 | 8. Limitation of Liability. In no event and under no legal theory, 155 | whether in tort (including negligence), contract, or otherwise, 156 | unless required by applicable law (such as deliberate and grossly 157 | negligent acts) or agreed to in writing, shall any Contributor be 158 | liable to You for damages, including any direct, indirect, special, 159 | incidental, or consequential damages of any character arising as a 160 | result of this License or out of the use or inability to use the 161 | Work (including but not limited to damages for loss of goodwill, 162 | work stoppage, computer failure or malfunction, or any and all 163 | other commercial damages or losses), even if such Contributor 164 | has been advised of the possibility of such damages. 165 | 166 | 9. Accepting Warranty or Additional Liability. While redistributing 167 | the Work or Derivative Works thereof, You may choose to offer, 168 | and charge a fee for, acceptance of support, warranty, indemnity, 169 | or other liability obligations and/or rights consistent with this 170 | License. However, in accepting such obligations, You may act only 171 | on Your own behalf and on Your sole responsibility, not on behalf 172 | of any other Contributor, and only if You agree to indemnify, 173 | defend, and hold each Contributor harmless for any liability 174 | incurred by, or claims asserted against, such Contributor by reason 175 | of your accepting any such warranty or additional liability. 176 | 177 | END OF TERMS AND CONDITIONS 178 | 179 | APPENDIX: How to apply the Apache License to your work. 180 | 181 | To apply the Apache License to your work, attach the following 182 | boilerplate notice, with the fields enclosed by brackets "[]" 183 | replaced with your own identifying information. (Don't include 184 | the brackets!) The text should be enclosed in the appropriate 185 | comment syntax for the file format. We also recommend that a 186 | file or class name and description of purpose be included on the 187 | same "printed page" as the copyright notice for easier 188 | identification within third-party archives. 189 | 190 | Copyright [yyyy] [name of copyright owner] 191 | 192 | Licensed under the Apache License, Version 2.0 (the "License"); 193 | you may not use this file except in compliance with the License. 194 | You may obtain a copy of the License at 195 | 196 | http://www.apache.org/licenses/LICENSE-2.0 197 | 198 | Unless required by applicable law or agreed to in writing, software 199 | distributed under the License is distributed on an "AS IS" BASIS, 200 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 201 | See the License for the specific language governing permissions and 202 | limitations under the License. 203 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | all: ossl_shim 2 | 3 | ossl_shim: openssl boringssl/ssl/test/*.cc 4 | g++ -g -std=c++11 -Iopenssl/include boringssl/ssl/test/*.cc \ 5 | openssl/libssl.a openssl/libcrypto.a -ldl -lpthread \ 6 | -o ossl_shim 7 | 8 | openssl: openssl/libssl.a openssl/libcrypto.a 9 | 10 | openssl/libssl.a: 11 | cd openssl && make 12 | 13 | openssl/libcrypto.a: 14 | cd openssl && make 15 | 16 | test: all 17 | cd boringssl/ssl/test/runner && \ 18 | go test -shim-path ../../../../ossl_shim -pipe 19 | 20 | clean: 21 | cd openssl && make clean 22 | rm ossl_shim 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | openssl-tests 2 | ============= 3 | 4 | # An experiment for running BoringSSL tests against OpenSSL # 5 | 6 | ## Notes ## 7 | 8 | This is not an official Google product. 9 | 10 | This is an experimental patch. Several tests fail for the wrong reasons, 11 | for example, because the BoringSSL test harness is tuned to specific 12 | BoringSSL errors, or because a BoringSSL feature is not available in 13 | OpenSSL. 14 | 15 | OpenSSL and BoringSSL are provided as git submodules. This means that, 16 | by default, they're checked out to a specific git commit at which the 17 | patch and build are known to work. 18 | 19 | Please check the openssl INSTALL file for build pre-requisites. You will 20 | also need "go" installed. 21 | 22 | ## Build instructions ## 23 | 24 | 1. Initialize the OpenSSL and BoringSSL submodules: 25 | 26 | ``` 27 | $ git submodule init 28 | $ git submodule update 29 | ``` 30 | 31 | 2. Configure OpenSSL 32 | 33 | ``` 34 | $ cd openssl 35 | $ ./config enable-ssl3 enable-ssl3-method enable-weak-ssl-ciphers 36 | $ cd .. 37 | ``` 38 | 39 | 3. Patch BoringSSL 40 | 41 | ``` 42 | $ cd boringssl && git am ../ossl-shim.patch && cd .. 43 | ``` 44 | 45 | 4. Build and run tests 46 | 47 | ``` 48 | $ make test 49 | ``` 50 | 51 | ## Other instructions ## 52 | 53 | * To test against a newer version of OpenSSL locally, cd into the 54 | submodule directory and use git as usual, e.g., to pull the latest 55 | master: 56 | 57 | ``` 58 | $ git checkout master 59 | $ git pull 60 | ``` 61 | 62 | * To revert all local changes and bring the submodules back to the 63 | original state, do: 64 | 65 | ``` 66 | $ git submodule update 67 | ``` 68 | 69 | * To run a single test: 70 | 71 | ```` 72 | $ cd boringssl/ssl/test/runner 73 | $ go test -shim-path ../../../../ossl_shim -pipe -test TestName 74 | ```` 75 | 76 | -------------------------------------------------------------------------------- /ossl-shim.patch: -------------------------------------------------------------------------------- 1 | From 6a3645fcc6570dc88436906536ec4ef0102e3f1d Mon Sep 17 00:00:00 2001 2 | From: David Benjamin 3 | Date: Sat, 5 Mar 2016 11:56:13 -0500 4 | Subject: [PATCH 1/2] Make bssl_shim build against OpenSSL instead. 5 | 6 | Copyright 2016 Google Inc. All rights reserved. 7 | 8 | Licensed under the Apache License, Version 2.0 (the "License"); 9 | you may not use this file except in compliance with the License. 10 | You may obtain a copy of the License at 11 | 12 | http://www.apache.org/licenses/LICENSE-2.0 13 | 14 | Unless required by applicable law or agreed to in writing, software 15 | distributed under the License is distributed on an "AS IS" BASIS, 16 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | See the License for the specific language governing permissions and 18 | limitations under the License. 19 | 20 | Not for landing, but uploaded so people can play with it. For the most 21 | part this is removing BoringSSL-specific features and handling a few API 22 | divergences. 23 | 24 | (The DH_get_2048_256 API difference seems to have been an mistake on our 25 | part when importing. I'll fix that one.) 26 | 27 | This test suite includes tests for RC4 and SSL3. To avoid some false positives, 28 | configure OpenSSL with: 29 | 30 | enable-ssl3 enable-ssl3-method enable-weak-ssl-ciphers 31 | 32 | To build, cd into ssl/test and run: 33 | 34 | g++ -std=c++11 -I$openssl_dir/include *.cc $openssl_dir/libcrypto.a $openssl_dir/libssl.a -o ossl_shim 35 | 36 | Then cd into ssl/test/runner 37 | 38 | go test -shim-path ../ossl_shim 39 | 40 | To run an individual test, run: 41 | 42 | go test -shim-path ../ossl_shim -test TestNameHere 43 | 44 | See ssl/test/runner/runner.go for additional options. The -debug and -gdb (or 45 | -lldb) options may be useful. 46 | 47 | Change-Id: I74d832207b970f1910b1baf6abd20e5f255aecee 48 | --- 49 | crypto/test/scoped_types.h | 44 +--- 50 | ssl/test/async_bio.cc | 6 +- 51 | ssl/test/bssl_shim.cc | 490 +++++---------------------------------------- 52 | ssl/test/packeted_bio.cc | 40 +--- 53 | ssl/test/packeted_bio.h | 4 +- 54 | ssl/test/runner/runner.go | 7 +- 55 | ssl/test/test_config.cc | 16 +- 56 | 7 files changed, 78 insertions(+), 529 deletions(-) 57 | 58 | diff --git a/crypto/test/scoped_types.h b/crypto/test/scoped_types.h 59 | index eef30e7..a1f6851 100644 60 | --- a/crypto/test/scoped_types.h 61 | +++ b/crypto/test/scoped_types.h 62 | @@ -20,20 +20,16 @@ 63 | 64 | #include 65 | 66 | -#include 67 | #include 68 | #include 69 | #include 70 | +#include 71 | #include 72 | -#include 73 | #include 74 | #include 75 | #include 76 | -#include 77 | #include 78 | -#include 79 | -#include 80 | -#include 81 | +#include 82 | #include 83 | #include 84 | #include 85 | @@ -74,29 +70,6 @@ template 86 | using ScopedOpenSSLStack = 87 | std::unique_ptr>; 88 | 89 | -template 91 | -class ScopedOpenSSLContext { 92 | - public: 93 | - ScopedOpenSSLContext() { 94 | - init_func(&ctx_); 95 | - } 96 | - ~ScopedOpenSSLContext() { 97 | - cleanup_func(&ctx_); 98 | - } 99 | - 100 | - T *get() { return &ctx_; } 101 | - const T *get() const { return &ctx_; } 102 | - 103 | - void Reset() { 104 | - cleanup_func(&ctx_); 105 | - init_func(&ctx_); 106 | - } 107 | - 108 | - private: 109 | - T ctx_; 110 | -}; 111 | - 112 | using ScopedASN1_TYPE = ScopedOpenSSLType; 113 | using ScopedBIO = ScopedOpenSSLType; 114 | using ScopedBIGNUM = ScopedOpenSSLType; 115 | @@ -113,7 +86,6 @@ using ScopedEVP_PKEY_CTX = ScopedOpenSSLType; 116 | using ScopedPKCS8_PRIV_KEY_INFO = ScopedOpenSSLType; 118 | using ScopedPKCS12 = ScopedOpenSSLType; 119 | -using ScopedSPAKE2_CTX = ScopedOpenSSLType; 120 | using ScopedRSA = ScopedOpenSSLType; 121 | using ScopedX509 = ScopedOpenSSLType; 122 | using ScopedX509_ALGOR = ScopedOpenSSLType; 123 | @@ -122,18 +94,6 @@ using ScopedX509_STORE_CTX = ScopedOpenSSLType; 126 | 127 | -using ScopedCBB = ScopedOpenSSLContext; 128 | -using ScopedEVP_AEAD_CTX = ScopedOpenSSLContext; 131 | -using ScopedEVP_CIPHER_CTX = ScopedOpenSSLContext; 134 | -using ScopedEVP_MD_CTX = ScopedOpenSSLContext; 136 | -using ScopedHMAC_CTX = ScopedOpenSSLContext; 138 | - 139 | using ScopedOpenSSLBytes = std::unique_ptr>; 140 | using ScopedOpenSSLString = std::unique_ptr>; 141 | 142 | diff --git a/ssl/test/async_bio.cc b/ssl/test/async_bio.cc 143 | index 7a5737b..965a0fb 100644 144 | --- a/ssl/test/async_bio.cc 145 | +++ b/ssl/test/async_bio.cc 146 | @@ -17,12 +17,12 @@ 147 | #include 148 | #include 149 | 150 | -#include 151 | +#include 152 | 153 | 154 | namespace { 155 | 156 | -extern const BIO_METHOD g_async_bio_method; 157 | +extern BIO_METHOD g_async_bio_method; 158 | 159 | struct AsyncBio { 160 | bool datagram; 161 | @@ -135,7 +135,7 @@ static long AsyncCallbackCtrl(BIO *bio, int cmd, bio_info_cb fp) { 162 | return BIO_callback_ctrl(bio->next_bio, cmd, fp); 163 | } 164 | 165 | -const BIO_METHOD g_async_bio_method = { 166 | +BIO_METHOD g_async_bio_method = { 167 | BIO_TYPE_FILTER, 168 | "async bio", 169 | AsyncWrite, 170 | diff --git a/ssl/test/bssl_shim.cc b/ssl/test/bssl_shim.cc 171 | index 7da64bb..7de6aa3 100644 172 | --- a/ssl/test/bssl_shim.cc 173 | +++ b/ssl/test/bssl_shim.cc 174 | @@ -16,9 +16,9 @@ 175 | #define __STDC_FORMAT_MACROS 176 | #endif 177 | 178 | -#include 179 | +#include 180 | 181 | -#if !defined(OPENSSL_WINDOWS) 182 | +#if !defined(OPENSSL_SYS_WINDOWS) 183 | #include 184 | #include 185 | #include 186 | @@ -40,13 +40,13 @@ 187 | #include 188 | 189 | #include 190 | -#include 191 | -#include 192 | -#include 193 | +#include 194 | #include 195 | +#include 196 | #include 197 | +#include 198 | #include 199 | -#include 200 | +#include 201 | #include 202 | #include 203 | 204 | @@ -61,7 +61,7 @@ 205 | #include "test_config.h" 206 | 207 | 208 | -#if !defined(OPENSSL_WINDOWS) 209 | +#if !defined(OPENSSL_SYS_WINDOWS) 210 | static int closesocket(int sock) { 211 | return close(sock); 212 | } 213 | @@ -94,7 +94,6 @@ struct TestState { 214 | // clock_delta is how far the clock advanced in the most recent failed 215 | // |BIO_read|. 216 | timeval clock_delta; 217 | - ScopedEVP_PKEY channel_id; 218 | bool cert_ready = false; 219 | ScopedSSL_SESSION session; 220 | ScopedSSL_SESSION pending_session; 221 | @@ -154,143 +153,6 @@ static ScopedEVP_PKEY LoadPrivateKey(const std::string &file) { 222 | return ScopedEVP_PKEY(PEM_read_bio_PrivateKey(bio.get(), NULL, NULL, NULL)); 223 | } 224 | 225 | -static int AsyncPrivateKeyType(SSL *ssl) { 226 | - return EVP_PKEY_id(GetTestState(ssl)->private_key.get()); 227 | -} 228 | - 229 | -static size_t AsyncPrivateKeyMaxSignatureLen(SSL *ssl) { 230 | - return EVP_PKEY_size(GetTestState(ssl)->private_key.get()); 231 | -} 232 | - 233 | -static ssl_private_key_result_t AsyncPrivateKeySign( 234 | - SSL *ssl, uint8_t *out, size_t *out_len, size_t max_out, 235 | - const EVP_MD *md, const uint8_t *in, size_t in_len) { 236 | - TestState *test_state = GetTestState(ssl); 237 | - if (!test_state->private_key_result.empty()) { 238 | - fprintf(stderr, "AsyncPrivateKeySign called with operation pending.\n"); 239 | - abort(); 240 | - } 241 | - 242 | - ScopedEVP_PKEY_CTX ctx(EVP_PKEY_CTX_new(test_state->private_key.get(), 243 | - nullptr)); 244 | - if (!ctx) { 245 | - return ssl_private_key_failure; 246 | - } 247 | - 248 | - // Write the signature into |test_state|. 249 | - size_t len = 0; 250 | - if (!EVP_PKEY_sign_init(ctx.get()) || 251 | - !EVP_PKEY_CTX_set_signature_md(ctx.get(), md) || 252 | - !EVP_PKEY_sign(ctx.get(), nullptr, &len, in, in_len)) { 253 | - return ssl_private_key_failure; 254 | - } 255 | - test_state->private_key_result.resize(len); 256 | - if (!EVP_PKEY_sign(ctx.get(), test_state->private_key_result.data(), &len, in, 257 | - in_len)) { 258 | - return ssl_private_key_failure; 259 | - } 260 | - test_state->private_key_result.resize(len); 261 | - 262 | - // The signature will be released asynchronously in 263 | - // |AsyncPrivateKeySignComplete|. 264 | - return ssl_private_key_retry; 265 | -} 266 | - 267 | -static ssl_private_key_result_t AsyncPrivateKeySignComplete( 268 | - SSL *ssl, uint8_t *out, size_t *out_len, size_t max_out) { 269 | - TestState *test_state = GetTestState(ssl); 270 | - if (test_state->private_key_result.empty()) { 271 | - fprintf(stderr, 272 | - "AsyncPrivateKeySignComplete called without operation pending.\n"); 273 | - abort(); 274 | - } 275 | - 276 | - if (test_state->private_key_retries < 2) { 277 | - // Only return the signature on the second attempt, to test both incomplete 278 | - // |sign| and |sign_complete|. 279 | - return ssl_private_key_retry; 280 | - } 281 | - 282 | - if (max_out < test_state->private_key_result.size()) { 283 | - fprintf(stderr, "Output buffer too small.\n"); 284 | - return ssl_private_key_failure; 285 | - } 286 | - memcpy(out, test_state->private_key_result.data(), 287 | - test_state->private_key_result.size()); 288 | - *out_len = test_state->private_key_result.size(); 289 | - 290 | - test_state->private_key_result.clear(); 291 | - test_state->private_key_retries = 0; 292 | - return ssl_private_key_success; 293 | -} 294 | - 295 | -static ssl_private_key_result_t AsyncPrivateKeyDecrypt( 296 | - SSL *ssl, uint8_t *out, size_t *out_len, size_t max_out, 297 | - const uint8_t *in, size_t in_len) { 298 | - TestState *test_state = GetTestState(ssl); 299 | - if (!test_state->private_key_result.empty()) { 300 | - fprintf(stderr, 301 | - "AsyncPrivateKeyDecrypt called with operation pending.\n"); 302 | - abort(); 303 | - } 304 | - 305 | - RSA *rsa = EVP_PKEY_get0_RSA(test_state->private_key.get()); 306 | - if (rsa == NULL) { 307 | - fprintf(stderr, 308 | - "AsyncPrivateKeyDecrypt called with incorrect key type.\n"); 309 | - abort(); 310 | - } 311 | - test_state->private_key_result.resize(RSA_size(rsa)); 312 | - if (!RSA_decrypt(rsa, out_len, test_state->private_key_result.data(), 313 | - RSA_size(rsa), in, in_len, RSA_NO_PADDING)) { 314 | - return ssl_private_key_failure; 315 | - } 316 | - 317 | - test_state->private_key_result.resize(*out_len); 318 | - 319 | - // The decryption will be released asynchronously in 320 | - // |AsyncPrivateKeyDecryptComplete|. 321 | - return ssl_private_key_retry; 322 | -} 323 | - 324 | -static ssl_private_key_result_t AsyncPrivateKeyDecryptComplete( 325 | - SSL *ssl, uint8_t *out, size_t *out_len, size_t max_out) { 326 | - TestState *test_state = GetTestState(ssl); 327 | - if (test_state->private_key_result.empty()) { 328 | - fprintf(stderr, 329 | - "AsyncPrivateKeyDecryptComplete called without operation " 330 | - "pending.\n"); 331 | - abort(); 332 | - } 333 | - 334 | - if (test_state->private_key_retries < 2) { 335 | - // Only return the decryption on the second attempt, to test both incomplete 336 | - // |decrypt| and |decrypt_complete|. 337 | - return ssl_private_key_retry; 338 | - } 339 | - 340 | - if (max_out < test_state->private_key_result.size()) { 341 | - fprintf(stderr, "Output buffer too small.\n"); 342 | - return ssl_private_key_failure; 343 | - } 344 | - memcpy(out, test_state->private_key_result.data(), 345 | - test_state->private_key_result.size()); 346 | - *out_len = test_state->private_key_result.size(); 347 | - 348 | - test_state->private_key_result.clear(); 349 | - test_state->private_key_retries = 0; 350 | - return ssl_private_key_success; 351 | -} 352 | - 353 | -static const SSL_PRIVATE_KEY_METHOD g_async_private_key_method = { 354 | - AsyncPrivateKeyType, 355 | - AsyncPrivateKeyMaxSignatureLen, 356 | - AsyncPrivateKeySign, 357 | - AsyncPrivateKeySignComplete, 358 | - AsyncPrivateKeyDecrypt, 359 | - AsyncPrivateKeyDecryptComplete 360 | -}; 361 | - 362 | template 363 | struct Free { 364 | void operator()(T *buf) { 365 | @@ -303,24 +165,8 @@ static bool GetCertificate(SSL *ssl, ScopedX509 *out_x509, 366 | const TestConfig *config = GetConfigPtr(ssl); 367 | 368 | if (!config->digest_prefs.empty()) { 369 | - std::unique_ptr> digest_prefs( 370 | - strdup(config->digest_prefs.c_str())); 371 | - std::vector digest_list; 372 | - 373 | - for (;;) { 374 | - char *token = 375 | - strtok(digest_list.empty() ? digest_prefs.get() : nullptr, ","); 376 | - if (token == nullptr) { 377 | - break; 378 | - } 379 | - 380 | - digest_list.push_back(EVP_MD_type(EVP_get_digestbyname(token))); 381 | - } 382 | - 383 | - if (!SSL_set_private_key_digest_prefs(ssl, digest_list.data(), 384 | - digest_list.size())) { 385 | - return false; 386 | - } 387 | + fprintf(stderr, "Digest prefs not supported.\n"); 388 | + return false; 389 | } 390 | 391 | if (!config->key_file.empty()) { 392 | @@ -335,10 +181,8 @@ static bool GetCertificate(SSL *ssl, ScopedX509 *out_x509, 393 | return false; 394 | } 395 | } 396 | - if (!config->ocsp_response.empty() && 397 | - !SSL_CTX_set_ocsp_response(ssl->ctx, 398 | - (const uint8_t *)config->ocsp_response.data(), 399 | - config->ocsp_response.size())) { 400 | + if (!config->ocsp_response.empty()) { 401 | + fprintf(stderr, "OCSP response not supported.\n"); 402 | return false; 403 | } 404 | return true; 405 | @@ -354,10 +198,7 @@ static bool InstallCertificate(SSL *ssl) { 406 | if (pkey) { 407 | TestState *test_state = GetTestState(ssl); 408 | const TestConfig *config = GetConfigPtr(ssl); 409 | - if (config->async) { 410 | - test_state->private_key = std::move(pkey); 411 | - SSL_set_private_key_method(ssl, &g_async_private_key_method); 412 | - } else if (!SSL_use_PrivateKey(ssl, pkey.get())) { 413 | + if (!SSL_use_PrivateKey(ssl, pkey.get())) { 414 | return false; 415 | } 416 | } 417 | @@ -369,58 +210,6 @@ static bool InstallCertificate(SSL *ssl) { 418 | return true; 419 | } 420 | 421 | -static int SelectCertificateCallback(const struct ssl_early_callback_ctx *ctx) { 422 | - const TestConfig *config = GetConfigPtr(ctx->ssl); 423 | - GetTestState(ctx->ssl)->early_callback_called = true; 424 | - 425 | - if (!config->expected_server_name.empty()) { 426 | - const uint8_t *extension_data; 427 | - size_t extension_len; 428 | - CBS extension, server_name_list, host_name; 429 | - uint8_t name_type; 430 | - 431 | - if (!SSL_early_callback_ctx_extension_get(ctx, TLSEXT_TYPE_server_name, 432 | - &extension_data, 433 | - &extension_len)) { 434 | - fprintf(stderr, "Could not find server_name extension.\n"); 435 | - return -1; 436 | - } 437 | - 438 | - CBS_init(&extension, extension_data, extension_len); 439 | - if (!CBS_get_u16_length_prefixed(&extension, &server_name_list) || 440 | - CBS_len(&extension) != 0 || 441 | - !CBS_get_u8(&server_name_list, &name_type) || 442 | - name_type != TLSEXT_NAMETYPE_host_name || 443 | - !CBS_get_u16_length_prefixed(&server_name_list, &host_name) || 444 | - CBS_len(&server_name_list) != 0) { 445 | - fprintf(stderr, "Could not decode server_name extension.\n"); 446 | - return -1; 447 | - } 448 | - 449 | - if (!CBS_mem_equal(&host_name, 450 | - (const uint8_t*)config->expected_server_name.data(), 451 | - config->expected_server_name.size())) { 452 | - fprintf(stderr, "Server name mismatch.\n"); 453 | - } 454 | - } 455 | - 456 | - if (config->fail_early_callback) { 457 | - return -1; 458 | - } 459 | - 460 | - // Install the certificate in the early callback. 461 | - if (config->use_early_callback) { 462 | - if (config->async) { 463 | - // Install the certificate asynchronously. 464 | - return 0; 465 | - } 466 | - if (!InstallCertificate(ctx->ssl)) { 467 | - return -1; 468 | - } 469 | - } 470 | - return 1; 471 | -} 472 | - 473 | static int ClientCertCallback(SSL *ssl, X509 **out_x509, EVP_PKEY **out_pkey) { 474 | if (GetConfigPtr(ssl)->async && !GetTestState(ssl)->cert_ready) { 475 | return -1; 476 | @@ -444,20 +233,6 @@ static int ClientCertCallback(SSL *ssl, X509 **out_x509, EVP_PKEY **out_pkey) { 477 | } 478 | 479 | static int VerifySucceed(X509_STORE_CTX *store_ctx, void *arg) { 480 | - SSL* ssl = (SSL*)X509_STORE_CTX_get_ex_data(store_ctx, 481 | - SSL_get_ex_data_X509_STORE_CTX_idx()); 482 | - const TestConfig *config = GetConfigPtr(ssl); 483 | - 484 | - if (!config->expected_ocsp_response.empty()) { 485 | - const uint8_t *data; 486 | - size_t len; 487 | - SSL_get0_ocsp_response(ssl, &data, &len); 488 | - if (len == 0) { 489 | - fprintf(stderr, "OCSP response not available in verify callback\n"); 490 | - return 0; 491 | - } 492 | - } 493 | - 494 | return 1; 495 | } 496 | 497 | @@ -552,14 +327,6 @@ static unsigned PskServerCallback(SSL *ssl, const char *identity, 498 | return config->psk.size(); 499 | } 500 | 501 | -static void CurrentTimeCallback(const SSL *ssl, timeval *out_clock) { 502 | - *out_clock = GetTestState(ssl)->clock; 503 | -} 504 | - 505 | -static void ChannelIdCallback(SSL *ssl, EVP_PKEY **out_pkey) { 506 | - *out_pkey = GetTestState(ssl)->channel_id.release(); 507 | -} 508 | - 509 | static int CertCallback(SSL *ssl, void *arg) { 510 | if (!GetTestState(ssl)->cert_ready) { 511 | return -1; 512 | @@ -570,31 +337,6 @@ static int CertCallback(SSL *ssl, void *arg) { 513 | return 1; 514 | } 515 | 516 | -static SSL_SESSION *GetSessionCallback(SSL *ssl, uint8_t *data, int len, 517 | - int *copy) { 518 | - TestState *async_state = GetTestState(ssl); 519 | - if (async_state->session) { 520 | - *copy = 0; 521 | - return async_state->session.release(); 522 | - } else if (async_state->pending_session) { 523 | - return SSL_magic_pending_session_ptr(); 524 | - } else { 525 | - return NULL; 526 | - } 527 | -} 528 | - 529 | -static int DDoSCallback(const struct ssl_early_callback_ctx *early_context) { 530 | - const TestConfig *config = GetConfigPtr(early_context->ssl); 531 | - static int callback_num = 0; 532 | - 533 | - callback_num++; 534 | - if (config->fail_ddos_callback || 535 | - (config->fail_second_ddos_callback && callback_num == 2)) { 536 | - return 0; 537 | - } 538 | - return 1; 539 | -} 540 | - 541 | static void InfoCallback(const SSL *ssl, int type, int val) { 542 | if (type == SSL_CB_HANDSHAKE_DONE) { 543 | if (GetConfigPtr(ssl)->handshake_never_done) { 544 | @@ -769,18 +511,12 @@ static ScopedSSL_CTX SetupCtx(const TestConfig *config) { 545 | return nullptr; 546 | } 547 | 548 | - if (!config->cipher_tls10.empty() && 549 | - !SSL_CTX_set_cipher_list_tls10(ssl_ctx.get(), 550 | - config->cipher_tls10.c_str())) { 551 | - return nullptr; 552 | - } 553 | - if (!config->cipher_tls11.empty() && 554 | - !SSL_CTX_set_cipher_list_tls11(ssl_ctx.get(), 555 | - config->cipher_tls11.c_str())) { 556 | + if (!config->cipher_tls10.empty() || !config->cipher_tls11.empty()) { 557 | + fprintf(stderr, "version-specific cipher lists not supported.\n"); 558 | return nullptr; 559 | } 560 | 561 | - ScopedDH dh(DH_get_2048_256(NULL)); 562 | + ScopedDH dh(DH_get_2048_256()); 563 | 564 | if (config->use_sparse_dh_prime) { 565 | // This prime number is 2^1024 + 643 – a value just above a power of two. 566 | @@ -798,24 +534,14 @@ static ScopedSSL_CTX SetupCtx(const TestConfig *config) { 567 | } 568 | BN_free(dh->q); 569 | dh->q = NULL; 570 | - dh->priv_length = 0; 571 | + dh->length = 0; 572 | } 573 | 574 | if (!dh || !SSL_CTX_set_tmp_dh(ssl_ctx.get(), dh.get())) { 575 | return nullptr; 576 | } 577 | 578 | - if (config->async && config->is_server) { 579 | - // Disable the internal session cache. To test asynchronous session lookup, 580 | - // we use an external session cache. 581 | - SSL_CTX_set_session_cache_mode( 582 | - ssl_ctx.get(), SSL_SESS_CACHE_BOTH | SSL_SESS_CACHE_NO_INTERNAL); 583 | - SSL_CTX_sess_set_get_cb(ssl_ctx.get(), GetSessionCallback); 584 | - } else { 585 | - SSL_CTX_set_session_cache_mode(ssl_ctx.get(), SSL_SESS_CACHE_BOTH); 586 | - } 587 | - 588 | - SSL_CTX_set_select_certificate_cb(ssl_ctx.get(), SelectCertificateCallback); 589 | + SSL_CTX_set_session_cache_mode(ssl_ctx.get(), SSL_SESS_CACHE_BOTH); 590 | 591 | if (config->use_old_client_cert_callback) { 592 | SSL_CTX_set_client_cert_cb(ssl_ctx.get(), ClientCertCallback); 593 | @@ -832,11 +558,6 @@ static ScopedSSL_CTX SetupCtx(const TestConfig *config) { 594 | SSL_CTX_set_alpn_select_cb(ssl_ctx.get(), AlpnSelectCallback, NULL); 595 | } 596 | 597 | - SSL_CTX_enable_tls_channel_id(ssl_ctx.get()); 598 | - SSL_CTX_set_channel_id_cb(ssl_ctx.get(), ChannelIdCallback); 599 | - 600 | - ssl_ctx->current_time_cb = CurrentTimeCallback; 601 | - 602 | SSL_CTX_set_info_callback(ssl_ctx.get(), InfoCallback); 603 | SSL_CTX_sess_set_new_cb(ssl_ctx.get(), NewSessionCallback); 604 | 605 | @@ -866,10 +587,8 @@ static ScopedSSL_CTX SetupCtx(const TestConfig *config) { 606 | SSL_CTX_set_cert_verify_callback(ssl_ctx.get(), VerifySucceed, NULL); 607 | } 608 | 609 | - if (!config->signed_cert_timestamps.empty() && 610 | - !SSL_CTX_set_signed_cert_timestamp_list( 611 | - ssl_ctx.get(), (const uint8_t *)config->signed_cert_timestamps.data(), 612 | - config->signed_cert_timestamps.size())) { 613 | + if (!config->signed_cert_timestamps.empty()) { 614 | + fprintf(stderr, "SCTs not supported.\n"); 615 | return nullptr; 616 | } 617 | 618 | @@ -922,26 +641,9 @@ static bool RetryAsync(SSL *ssl, int ret) { 619 | case SSL_ERROR_WANT_WRITE: 620 | AsyncBioAllowWrite(test_state->async_bio, 1); 621 | return true; 622 | - case SSL_ERROR_WANT_CHANNEL_ID_LOOKUP: { 623 | - ScopedEVP_PKEY pkey = LoadPrivateKey(GetConfigPtr(ssl)->send_channel_id); 624 | - if (!pkey) { 625 | - return false; 626 | - } 627 | - test_state->channel_id = std::move(pkey); 628 | - return true; 629 | - } 630 | case SSL_ERROR_WANT_X509_LOOKUP: 631 | test_state->cert_ready = true; 632 | return true; 633 | - case SSL_ERROR_PENDING_SESSION: 634 | - test_state->session = std::move(test_state->pending_session); 635 | - return true; 636 | - case SSL_ERROR_PENDING_CERTIFICATE: 637 | - // The handshake will resume without a second call to the early callback. 638 | - return InstallCertificate(ssl); 639 | - case SSL_ERROR_WANT_PRIVATE_KEY_OPERATION: 640 | - test_state->private_key_retries++; 641 | - return true; 642 | default: 643 | return false; 644 | } 645 | @@ -1031,11 +733,6 @@ static bool CheckHandshakeProperties(SSL *ssl, bool is_resume) { 646 | } 647 | } 648 | 649 | - if (config->is_server && !GetTestState(ssl)->early_callback_called) { 650 | - fprintf(stderr, "early callback not called\n"); 651 | - return false; 652 | - } 653 | - 654 | if (!config->expected_server_name.empty()) { 655 | const char *server_name = 656 | SSL_get_servername(ssl, TLSEXT_NAMETYPE_host_name); 657 | @@ -1083,50 +780,6 @@ static bool CheckHandshakeProperties(SSL *ssl, bool is_resume) { 658 | } 659 | } 660 | 661 | - if (!config->expected_channel_id.empty()) { 662 | - uint8_t channel_id[64]; 663 | - if (!SSL_get_tls_channel_id(ssl, channel_id, sizeof(channel_id))) { 664 | - fprintf(stderr, "no channel id negotiated\n"); 665 | - return false; 666 | - } 667 | - if (config->expected_channel_id.size() != 64 || 668 | - memcmp(config->expected_channel_id.data(), 669 | - channel_id, 64) != 0) { 670 | - fprintf(stderr, "channel id mismatch\n"); 671 | - return false; 672 | - } 673 | - } 674 | - 675 | - if (config->expect_extended_master_secret) { 676 | - if (!ssl->session->extended_master_secret) { 677 | - fprintf(stderr, "No EMS for session when expected"); 678 | - return false; 679 | - } 680 | - } 681 | - 682 | - if (!config->expected_ocsp_response.empty()) { 683 | - const uint8_t *data; 684 | - size_t len; 685 | - SSL_get0_ocsp_response(ssl, &data, &len); 686 | - if (config->expected_ocsp_response.size() != len || 687 | - memcmp(config->expected_ocsp_response.data(), data, len) != 0) { 688 | - fprintf(stderr, "OCSP response mismatch\n"); 689 | - return false; 690 | - } 691 | - } 692 | - 693 | - if (!config->expected_signed_cert_timestamps.empty()) { 694 | - const uint8_t *data; 695 | - size_t len; 696 | - SSL_get0_signed_cert_timestamp_list(ssl, &data, &len); 697 | - if (config->expected_signed_cert_timestamps.size() != len || 698 | - memcmp(config->expected_signed_cert_timestamps.data(), 699 | - data, len) != 0) { 700 | - fprintf(stderr, "SCT list mismatch\n"); 701 | - return false; 702 | - } 703 | - } 704 | - 705 | if (config->expect_verify_result) { 706 | int expected_verify_result = config->verify_fail ? 707 | X509_V_ERR_APPLICATION_VERIFICATION : 708 | @@ -1138,24 +791,6 @@ static bool CheckHandshakeProperties(SSL *ssl, bool is_resume) { 709 | } 710 | } 711 | 712 | - if (config->expect_server_key_exchange_hash != 0 && 713 | - config->expect_server_key_exchange_hash != 714 | - SSL_get_server_key_exchange_hash(ssl)) { 715 | - fprintf(stderr, "ServerKeyExchange hash was %d, wanted %d.\n", 716 | - SSL_get_server_key_exchange_hash(ssl), 717 | - config->expect_server_key_exchange_hash); 718 | - return false; 719 | - } 720 | - 721 | - if (config->expect_key_exchange_info != 0) { 722 | - uint32_t info = SSL_SESSION_get_key_exchange_info(SSL_get_session(ssl)); 723 | - if (static_cast(config->expect_key_exchange_info) != info) { 724 | - fprintf(stderr, "key_exchange_info was %" PRIu32 ", wanted %" PRIu32 "\n", 725 | - info, static_cast(config->expect_key_exchange_info)); 726 | - return false; 727 | - } 728 | - } 729 | - 730 | if (!config->is_server) { 731 | /* Clients should expect a peer certificate chain iff this was not a PSK 732 | * cipher suite. */ 733 | @@ -1199,6 +834,9 @@ static bool DoExchange(ScopedSSL_SESSION *out_session, SSL_CTX *ssl_ctx, 734 | } else if (!InstallCertificate(ssl.get())) { 735 | return false; 736 | } 737 | + } else { 738 | + fprintf(stderr, "Early callback not supported.\n"); 739 | + return false; 740 | } 741 | if (config->require_any_client_certificate) { 742 | SSL_set_verify(ssl.get(), SSL_VERIFY_PEER|SSL_VERIFY_FAIL_IF_NO_PEER_CERT, 743 | @@ -1208,10 +846,8 @@ static bool DoExchange(ScopedSSL_SESSION *out_session, SSL_CTX *ssl_ctx, 744 | SSL_set_verify(ssl.get(), SSL_VERIFY_PEER, NULL); 745 | } 746 | if (config->false_start) { 747 | - SSL_set_mode(ssl.get(), SSL_MODE_ENABLE_FALSE_START); 748 | - } 749 | - if (config->cbc_record_splitting) { 750 | - SSL_set_mode(ssl.get(), SSL_MODE_CBC_RECORD_SPLITTING); 751 | + fprintf(stderr, "False Start not supported\n"); 752 | + return false; 753 | } 754 | if (config->partial_write) { 755 | SSL_set_mode(ssl.get(), SSL_MODE_ENABLE_PARTIAL_WRITE); 756 | @@ -1229,17 +865,12 @@ static bool DoExchange(ScopedSSL_SESSION *out_session, SSL_CTX *ssl_ctx, 757 | SSL_set_options(ssl.get(), SSL_OP_NO_SSLv3); 758 | } 759 | if (!config->expected_channel_id.empty()) { 760 | - SSL_enable_tls_channel_id(ssl.get()); 761 | + fprintf(stderr, "Channel ID not supported\n"); 762 | + return false; 763 | } 764 | if (!config->send_channel_id.empty()) { 765 | - SSL_enable_tls_channel_id(ssl.get()); 766 | - if (!config->async) { 767 | - // The async case will be supplied by |ChannelIdCallback|. 768 | - ScopedEVP_PKEY pkey = LoadPrivateKey(config->send_channel_id); 769 | - if (!pkey || !SSL_set1_tls_channel_id(ssl.get(), pkey.get())) { 770 | - return false; 771 | - } 772 | - } 773 | + fprintf(stderr, "Channel ID not supported\n"); 774 | + return false; 775 | } 776 | if (!config->host_name.empty() && 777 | !SSL_set_tlsext_host_name(ssl.get(), config->host_name.c_str())) { 778 | @@ -1260,44 +891,48 @@ static bool DoExchange(ScopedSSL_SESSION *out_session, SSL_CTX *ssl_ctx, 779 | return false; 780 | } 781 | if (!config->srtp_profiles.empty() && 782 | - !SSL_set_srtp_profiles(ssl.get(), config->srtp_profiles.c_str())) { 783 | + SSL_set_tlsext_use_srtp(ssl.get(), config->srtp_profiles.c_str())) { 784 | return false; 785 | } 786 | - if (config->enable_ocsp_stapling && 787 | - !SSL_enable_ocsp_stapling(ssl.get())) { 788 | + if (config->enable_ocsp_stapling) { 789 | + fprintf(stderr, "OCSP stapling not supported (with the same API).\n"); 790 | return false; 791 | } 792 | - if (config->enable_signed_cert_timestamps && 793 | - !SSL_enable_signed_cert_timestamps(ssl.get())) { 794 | + if (config->enable_signed_cert_timestamps) { 795 | + fprintf(stderr, "SCTs not supported (with the same API).\n"); 796 | return false; 797 | } 798 | if (config->min_version != 0) { 799 | - SSL_set_min_version(ssl.get(), (uint16_t)config->min_version); 800 | + SSL_set_min_proto_version(ssl.get(), (uint16_t)config->min_version); 801 | } 802 | if (config->max_version != 0) { 803 | - SSL_set_max_version(ssl.get(), (uint16_t)config->max_version); 804 | + SSL_set_max_proto_version(ssl.get(), (uint16_t)config->max_version); 805 | } 806 | if (config->mtu != 0) { 807 | SSL_set_options(ssl.get(), SSL_OP_NO_QUERY_MTU); 808 | SSL_set_mtu(ssl.get(), config->mtu); 809 | } 810 | if (config->install_ddos_callback) { 811 | - SSL_CTX_set_dos_protection_cb(ssl_ctx, DDoSCallback); 812 | + fprintf(stderr, "DDoS callback not supported.\n"); 813 | + return false; 814 | } 815 | if (config->renegotiate_once) { 816 | - SSL_set_renegotiate_mode(ssl.get(), ssl_renegotiate_once); 817 | + fprintf(stderr, "renegotiate_once not supported.\n"); 818 | + return false; 819 | } 820 | if (config->renegotiate_freely) { 821 | - SSL_set_renegotiate_mode(ssl.get(), ssl_renegotiate_freely); 822 | + // This is always on for OpenSSL. 823 | } 824 | if (config->renegotiate_ignore) { 825 | - SSL_set_renegotiate_mode(ssl.get(), ssl_renegotiate_ignore); 826 | + fprintf(stderr, "renegotiate_ignore not supported.\n"); 827 | + return false; 828 | } 829 | if (!config->check_close_notify) { 830 | SSL_set_quiet_shutdown(ssl.get(), 1); 831 | } 832 | if (config->disable_npn) { 833 | - SSL_set_options(ssl.get(), SSL_OP_DISABLE_NPN); 834 | + fprintf(stderr, "SSL_OP_DISABLE_NPN not supported.\n"); 835 | + return false; 836 | } 837 | if (config->p384_only) { 838 | int nid = NID_secp384r1; 839 | @@ -1346,18 +981,17 @@ static bool DoExchange(ScopedSSL_SESSION *out_session, SSL_CTX *ssl_ctx, 840 | if (SSL_set_session(ssl.get(), session) != 1) { 841 | return false; 842 | } 843 | - } else if (config->async) { 844 | - // The internal session cache is disabled, so install the session 845 | - // manually. 846 | - GetTestState(ssl.get())->pending_session.reset( 847 | - SSL_SESSION_up_ref(session)); 848 | } 849 | } 850 | 851 | +#if 0 852 | + // KNOWN BUG: OpenSSL's SSL_get_current_cipher behaves incorrectly when 853 | + // offering resumption. 854 | if (SSL_get_current_cipher(ssl.get()) != nullptr) { 855 | fprintf(stderr, "non-null cipher before handshake\n"); 856 | return false; 857 | } 858 | +#endif 859 | 860 | int ret; 861 | if (config->implicit_handshake) { 862 | @@ -1387,11 +1021,11 @@ static bool DoExchange(ScopedSSL_SESSION *out_session, SSL_CTX *ssl_ctx, 863 | if (config->export_keying_material > 0) { 864 | std::vector result( 865 | static_cast(config->export_keying_material)); 866 | - if (!SSL_export_keying_material( 867 | + if (SSL_export_keying_material( 868 | ssl.get(), result.data(), result.size(), 869 | config->export_label.data(), config->export_label.size(), 870 | reinterpret_cast(config->export_context.data()), 871 | - config->export_context.size(), config->use_export_context)) { 872 | + config->export_context.size(), config->use_export_context) != 1) { 873 | fprintf(stderr, "failed to export keying material\n"); 874 | return false; 875 | } 876 | @@ -1401,23 +1035,8 @@ static bool DoExchange(ScopedSSL_SESSION *out_session, SSL_CTX *ssl_ctx, 877 | } 878 | 879 | if (config->tls_unique) { 880 | - uint8_t tls_unique[16]; 881 | - size_t tls_unique_len; 882 | - if (!SSL_get_tls_unique(ssl.get(), tls_unique, &tls_unique_len, 883 | - sizeof(tls_unique))) { 884 | - fprintf(stderr, "failed to get tls-unique\n"); 885 | - return false; 886 | - } 887 | - 888 | - if (tls_unique_len != 12) { 889 | - fprintf(stderr, "expected 12 bytes of tls-unique but got %u", 890 | - static_cast(tls_unique_len)); 891 | - return false; 892 | - } 893 | - 894 | - if (WriteAll(ssl.get(), tls_unique, tls_unique_len) < 0) { 895 | - return false; 896 | - } 897 | + fprintf(stderr, "tls_unique not supported\n"); 898 | + return false; 899 | } 900 | 901 | if (config->write_different_record_sizes) { 902 | @@ -1528,7 +1147,7 @@ static bool DoExchange(ScopedSSL_SESSION *out_session, SSL_CTX *ssl_ctx, 903 | 904 | if (SSL_total_renegotiations(ssl.get()) != 905 | config->expect_total_renegotiations) { 906 | - fprintf(stderr, "Expected %d renegotiations, got %d\n", 907 | + fprintf(stderr, "Expected %d renegotiations, got %ld\n", 908 | config->expect_total_renegotiations, 909 | SSL_total_renegotiations(ssl.get())); 910 | return false; 911 | @@ -1564,7 +1183,8 @@ int main(int argc, char **argv) { 912 | signal(SIGPIPE, SIG_IGN); 913 | #endif 914 | 915 | - CRYPTO_library_init(); 916 | + OPENSSL_init_crypto(0, NULL); 917 | + OPENSSL_init_ssl(0, NULL); 918 | g_config_index = SSL_get_ex_new_index(0, NULL, NULL, NULL, NULL); 919 | g_state_index = SSL_get_ex_new_index(0, NULL, NULL, NULL, TestStateExFree); 920 | if (g_config_index < 0 || g_state_index < 0) { 921 | diff --git a/ssl/test/packeted_bio.cc b/ssl/test/packeted_bio.cc 922 | index e831082..dd97df1 100644 923 | --- a/ssl/test/packeted_bio.cc 924 | +++ b/ssl/test/packeted_bio.cc 925 | @@ -19,16 +19,15 @@ 926 | #include 927 | #include 928 | 929 | -#include 930 | +#include 931 | 932 | 933 | namespace { 934 | 935 | -extern const BIO_METHOD g_packeted_bio_method; 936 | +extern BIO_METHOD g_packeted_bio_method; 937 | 938 | const uint8_t kOpcodePacket = 'P'; 939 | const uint8_t kOpcodeTimeout = 'T'; 940 | -const uint8_t kOpcodeTimeoutAck = 't'; 941 | 942 | // ReadAll reads |len| bytes from |bio| into |out|. It returns 1 on success and 943 | // 0 or -1 on error. 944 | @@ -94,38 +93,7 @@ static int PacketedRead(BIO *bio, char *out, int outl) { 945 | } 946 | 947 | if (opcode == kOpcodeTimeout) { 948 | - // Process the timeout. 949 | - uint8_t buf[8]; 950 | - ret = ReadAll(bio->next_bio, buf, sizeof(buf)); 951 | - if (ret <= 0) { 952 | - BIO_copy_next_retry(bio); 953 | - return ret; 954 | - } 955 | - uint64_t timeout = (static_cast(buf[0]) << 56) | 956 | - (static_cast(buf[1]) << 48) | 957 | - (static_cast(buf[2]) << 40) | 958 | - (static_cast(buf[3]) << 32) | 959 | - (static_cast(buf[4]) << 24) | 960 | - (static_cast(buf[5]) << 16) | 961 | - (static_cast(buf[6]) << 8) | 962 | - static_cast(buf[7]); 963 | - timeout /= 1000; // Convert nanoseconds to microseconds. 964 | - timeval *out_timeout = reinterpret_cast(bio->ptr); 965 | - assert(out_timeout->tv_usec == 0); 966 | - assert(out_timeout->tv_sec == 0); 967 | - out_timeout->tv_usec = timeout % 1000000; 968 | - out_timeout->tv_sec = timeout / 1000000; 969 | - 970 | - // Send an ACK to the peer. 971 | - ret = BIO_write(bio->next_bio, &kOpcodeTimeoutAck, 1); 972 | - if (ret <= 0) { 973 | - return ret; 974 | - } 975 | - assert(ret == 1); 976 | - 977 | - // Signal to the caller to retry the read, after processing the 978 | - // new clock. 979 | - BIO_set_retry_read(bio); 980 | + fprintf(stderr, "Timeout simulation not supported.\n"); 981 | return -1; 982 | } 983 | 984 | @@ -193,7 +161,7 @@ static long PacketedCallbackCtrl(BIO *bio, int cmd, bio_info_cb fp) { 985 | return BIO_callback_ctrl(bio->next_bio, cmd, fp); 986 | } 987 | 988 | -const BIO_METHOD g_packeted_bio_method = { 989 | +BIO_METHOD g_packeted_bio_method = { 990 | BIO_TYPE_FILTER, 991 | "packeted bio", 992 | PacketedWrite, 993 | diff --git a/ssl/test/packeted_bio.h b/ssl/test/packeted_bio.h 994 | index 75cfa13..61e6b25 100644 995 | --- a/ssl/test/packeted_bio.h 996 | +++ b/ssl/test/packeted_bio.h 997 | @@ -15,12 +15,12 @@ 998 | #ifndef HEADER_PACKETED_BIO 999 | #define HEADER_PACKETED_BIO 1000 | 1001 | -#include 1002 | +#include 1003 | #include 1004 | 1005 | #include "../../crypto/test/scoped_types.h" 1006 | 1007 | -#if defined(OPENSSL_WINDOWS) 1008 | +#if defined(OPENSSL_SYS_WINDOWS) 1009 | #pragma warning(push, 3) 1010 | #include 1011 | #pragma warning(pop) 1012 | diff --git a/ssl/test/runner/runner.go b/ssl/test/runner/runner.go 1013 | index e81786d..66b3f57 100644 1014 | --- a/ssl/test/runner/runner.go 1015 | +++ b/ssl/test/runner/runner.go 1016 | @@ -818,6 +818,11 @@ func runTest(test *testCase, shimPath string, mallocNumToFail int64) error { 1017 | 1018 | failed := err != nil || childErr != nil 1019 | correctFailure := len(test.expectedError) == 0 || strings.Contains(stderr, test.expectedError) 1020 | + // Don't bother trying to match OpenSSL and BoringSSL's exact error 1021 | + // strings. 1022 | + if strings.Contains(test.expectedError, ":") { 1023 | + correctFailure = strings.Contains(stderr, ":error:") 1024 | + } 1025 | localError := "none" 1026 | if err != nil { 1027 | localError = err.Error() 1028 | @@ -826,7 +831,7 @@ func runTest(test *testCase, shimPath string, mallocNumToFail int64) error { 1029 | correctFailure = correctFailure && strings.Contains(localError, test.expectedLocalError) 1030 | } 1031 | 1032 | - if failed != test.shouldFail || failed && !correctFailure { 1033 | + if !strings.Contains(stderr, "not supported") && (failed != test.shouldFail || failed && !correctFailure) { 1034 | childError := "none" 1035 | if childErr != nil { 1036 | childError = childErr.Error() 1037 | diff --git a/ssl/test/test_config.cc b/ssl/test/test_config.cc 1038 | index dfbd380..75b03f2 100644 1039 | --- a/ssl/test/test_config.cc 1040 | +++ b/ssl/test/test_config.cc 1041 | @@ -20,7 +20,7 @@ 1042 | 1043 | #include 1044 | 1045 | -#include 1046 | +#include 1047 | 1048 | namespace { 1049 | 1050 | @@ -177,15 +177,11 @@ bool ParseConfig(int argc, char **argv, TestConfig *out_config) { 1051 | fprintf(stderr, "Missing parameter\n"); 1052 | return false; 1053 | } 1054 | - size_t len; 1055 | - if (!EVP_DecodedLength(&len, strlen(argv[i]))) { 1056 | - fprintf(stderr, "Invalid base64: %s\n", argv[i]); 1057 | - return false; 1058 | - } 1059 | - std::unique_ptr decoded(new uint8_t[len]); 1060 | - if (!EVP_DecodeBase64(decoded.get(), &len, len, 1061 | - reinterpret_cast(argv[i]), 1062 | - strlen(argv[i]))) { 1063 | + std::unique_ptr decoded(new uint8_t[strlen(argv[i])]); 1064 | + int len = EVP_DecodeBlock(decoded.get(), 1065 | + reinterpret_cast(argv[i]), 1066 | + strlen(argv[i])); 1067 | + if (len < 0) { 1068 | fprintf(stderr, "Invalid base64: %s\n", argv[i]); 1069 | return false; 1070 | } 1071 | -- 1072 | 2.7.4 1073 | 1074 | 1075 | From 1fd30c3bf39c95555464d9cf52e1436e16c9faa8 Mon Sep 17 00:00:00 2001 1076 | From: Matt Caswell 1077 | Date: Tue, 21 Jun 2016 12:06:26 +0100 1078 | Subject: [PATCH 2/2] Update bssl_shim for some opaque changes 1079 | 1080 | BIO, DH and STORE_CTX were made opaque. These changes enable bssl_shim to 1081 | build against the latest master version 1082 | --- 1083 | ssl/test/async_bio.cc | 72 +++++++++++++++++++++++++++--------------------- 1084 | ssl/test/bssl_shim.cc | 29 ++++++++++++++----- 1085 | ssl/test/packeted_bio.cc | 63 ++++++++++++++++++++++-------------------- 1086 | 3 files changed, 95 insertions(+), 69 deletions(-) 1087 | 1088 | diff --git a/ssl/test/async_bio.cc b/ssl/test/async_bio.cc 1089 | index 965a0fb..825b223 100644 1090 | --- a/ssl/test/async_bio.cc 1091 | +++ b/ssl/test/async_bio.cc 1092 | @@ -22,8 +22,6 @@ 1093 | 1094 | namespace { 1095 | 1096 | -extern BIO_METHOD g_async_bio_method; 1097 | - 1098 | struct AsyncBio { 1099 | bool datagram; 1100 | bool enforce_write_quota; 1101 | @@ -32,20 +30,26 @@ struct AsyncBio { 1102 | }; 1103 | 1104 | AsyncBio *GetData(BIO *bio) { 1105 | + /* 1106 | + * TODO: Missing accessor? This probably needs a BIO_get_method() in OpenSSL 1107 | + * For now skip this check 1108 | + */ 1109 | +#if 0 1110 | if (bio->method != &g_async_bio_method) { 1111 | return NULL; 1112 | } 1113 | - return (AsyncBio *)bio->ptr; 1114 | +#endif 1115 | + return (AsyncBio *)BIO_get_data(bio); 1116 | } 1117 | 1118 | static int AsyncWrite(BIO *bio, const char *in, int inl) { 1119 | AsyncBio *a = GetData(bio); 1120 | - if (a == NULL || bio->next_bio == NULL) { 1121 | + if (a == NULL || BIO_next(bio) == NULL) { 1122 | return 0; 1123 | } 1124 | 1125 | if (!a->enforce_write_quota) { 1126 | - return BIO_write(bio->next_bio, in, inl); 1127 | + return BIO_write(BIO_next(bio), in, inl); 1128 | } 1129 | 1130 | BIO_clear_retry_flags(bio); 1131 | @@ -59,7 +63,7 @@ static int AsyncWrite(BIO *bio, const char *in, int inl) { 1132 | if (!a->datagram && (size_t)inl > a->write_quota) { 1133 | inl = a->write_quota; 1134 | } 1135 | - int ret = BIO_write(bio->next_bio, in, inl); 1136 | + int ret = BIO_write(BIO_next(bio), in, inl); 1137 | if (ret <= 0) { 1138 | BIO_copy_next_retry(bio); 1139 | } else { 1140 | @@ -70,7 +74,7 @@ static int AsyncWrite(BIO *bio, const char *in, int inl) { 1141 | 1142 | static int AsyncRead(BIO *bio, char *out, int outl) { 1143 | AsyncBio *a = GetData(bio); 1144 | - if (a == NULL || bio->next_bio == NULL) { 1145 | + if (a == NULL || BIO_next(bio) == NULL) { 1146 | return 0; 1147 | } 1148 | 1149 | @@ -85,7 +89,7 @@ static int AsyncRead(BIO *bio, char *out, int outl) { 1150 | if (!a->datagram && (size_t)outl > a->read_quota) { 1151 | outl = a->read_quota; 1152 | } 1153 | - int ret = BIO_read(bio->next_bio, out, outl); 1154 | + int ret = BIO_read(BIO_next(bio), out, outl); 1155 | if (ret <= 0) { 1156 | BIO_copy_next_retry(bio); 1157 | } else { 1158 | @@ -95,11 +99,11 @@ static int AsyncRead(BIO *bio, char *out, int outl) { 1159 | } 1160 | 1161 | static long AsyncCtrl(BIO *bio, int cmd, long num, void *ptr) { 1162 | - if (bio->next_bio == NULL) { 1163 | + if (BIO_next(bio) == NULL) { 1164 | return 0; 1165 | } 1166 | BIO_clear_retry_flags(bio); 1167 | - int ret = BIO_ctrl(bio->next_bio, cmd, num, ptr); 1168 | + int ret = BIO_ctrl(BIO_next(bio), cmd, num, ptr); 1169 | BIO_copy_next_retry(bio); 1170 | return ret; 1171 | } 1172 | @@ -111,8 +115,8 @@ static int AsyncNew(BIO *bio) { 1173 | } 1174 | memset(a, 0, sizeof(*a)); 1175 | a->enforce_write_quota = true; 1176 | - bio->init = 1; 1177 | - bio->ptr = (char *)a; 1178 | + BIO_set_init(bio, 1); 1179 | + BIO_set_data(bio, a); 1180 | return 1; 1181 | } 1182 | 1183 | @@ -121,41 +125,45 @@ static int AsyncFree(BIO *bio) { 1184 | return 0; 1185 | } 1186 | 1187 | - OPENSSL_free(bio->ptr); 1188 | - bio->ptr = NULL; 1189 | - bio->init = 0; 1190 | - bio->flags = 0; 1191 | + OPENSSL_free(BIO_get_data(bio)); 1192 | + BIO_set_data(bio, NULL); 1193 | + BIO_set_init(bio, 0); 1194 | return 1; 1195 | } 1196 | 1197 | static long AsyncCallbackCtrl(BIO *bio, int cmd, bio_info_cb fp) { 1198 | - if (bio->next_bio == NULL) { 1199 | + if (BIO_next(bio) == NULL) { 1200 | return 0; 1201 | } 1202 | - return BIO_callback_ctrl(bio->next_bio, cmd, fp); 1203 | + return BIO_callback_ctrl(BIO_next(bio), cmd, fp); 1204 | } 1205 | 1206 | -BIO_METHOD g_async_bio_method = { 1207 | - BIO_TYPE_FILTER, 1208 | - "async bio", 1209 | - AsyncWrite, 1210 | - AsyncRead, 1211 | - NULL /* puts */, 1212 | - NULL /* gets */, 1213 | - AsyncCtrl, 1214 | - AsyncNew, 1215 | - AsyncFree, 1216 | - AsyncCallbackCtrl, 1217 | -}; 1218 | +static BIO_METHOD *g_async_bio_method = NULL; 1219 | + 1220 | +static const BIO_METHOD *AsyncMethod(void) 1221 | +{ 1222 | + if (g_async_bio_method == NULL) { 1223 | + g_async_bio_method = BIO_meth_new(BIO_TYPE_FILTER, "async bio"); 1224 | + if ( g_async_bio_method == NULL 1225 | + || !BIO_meth_set_write(g_async_bio_method, AsyncWrite) 1226 | + || !BIO_meth_set_read(g_async_bio_method, AsyncRead) 1227 | + || !BIO_meth_set_ctrl(g_async_bio_method, AsyncCtrl) 1228 | + || !BIO_meth_set_create(g_async_bio_method, AsyncNew) 1229 | + || !BIO_meth_set_destroy(g_async_bio_method, AsyncFree) 1230 | + || !BIO_meth_set_callback_ctrl(g_async_bio_method, AsyncCallbackCtrl)) 1231 | + return NULL; 1232 | + } 1233 | + return g_async_bio_method; 1234 | +} 1235 | 1236 | } // namespace 1237 | 1238 | ScopedBIO AsyncBioCreate() { 1239 | - return ScopedBIO(BIO_new(&g_async_bio_method)); 1240 | + return ScopedBIO(BIO_new(AsyncMethod())); 1241 | } 1242 | 1243 | ScopedBIO AsyncBioCreateDatagram() { 1244 | - ScopedBIO ret(BIO_new(&g_async_bio_method)); 1245 | + ScopedBIO ret(BIO_new(AsyncMethod())); 1246 | if (!ret) { 1247 | return nullptr; 1248 | } 1249 | diff --git a/ssl/test/bssl_shim.cc b/ssl/test/bssl_shim.cc 1250 | index 7de6aa3..f94c8e6 100644 1251 | --- a/ssl/test/bssl_shim.cc 1252 | +++ b/ssl/test/bssl_shim.cc 1253 | @@ -237,7 +237,7 @@ static int VerifySucceed(X509_STORE_CTX *store_ctx, void *arg) { 1254 | } 1255 | 1256 | static int VerifyFail(X509_STORE_CTX *store_ctx, void *arg) { 1257 | - store_ctx->error = X509_V_ERR_APPLICATION_VERIFICATION; 1258 | + X509_STORE_CTX_set_error(store_ctx, X509_V_ERR_APPLICATION_VERIFICATION); 1259 | return 0; 1260 | } 1261 | 1262 | @@ -516,27 +516,42 @@ static ScopedSSL_CTX SetupCtx(const TestConfig *config) { 1263 | return nullptr; 1264 | } 1265 | 1266 | - ScopedDH dh(DH_get_2048_256()); 1267 | + DH *tmpdh; 1268 | 1269 | if (config->use_sparse_dh_prime) { 1270 | + BIGNUM *p, *g; 1271 | + p = BN_new(); 1272 | + g = BN_new(); 1273 | + tmpdh = DH_new(); 1274 | + if (p == NULL || g == NULL || tmpdh == NULL) { 1275 | + BN_free(p); 1276 | + BN_free(g); 1277 | + DH_free(tmpdh); 1278 | + return nullptr; 1279 | + } 1280 | // This prime number is 2^1024 + 643 – a value just above a power of two. 1281 | // Because of its form, values modulo it are essentially certain to be one 1282 | // byte shorter. This is used to test padding of these values. 1283 | if (BN_hex2bn( 1284 | - &dh->p, 1285 | + &p, 1286 | "1000000000000000000000000000000000000000000000000000000000000000" 1287 | "0000000000000000000000000000000000000000000000000000000000000000" 1288 | "0000000000000000000000000000000000000000000000000000000000000000" 1289 | "0000000000000000000000000000000000000000000000000000000000000028" 1290 | "3") == 0 || 1291 | - !BN_set_word(dh->g, 2)) { 1292 | + !BN_set_word(g, 2)) { 1293 | + BN_free(p); 1294 | + BN_free(g); 1295 | + DH_free(tmpdh); 1296 | return nullptr; 1297 | } 1298 | - BN_free(dh->q); 1299 | - dh->q = NULL; 1300 | - dh->length = 0; 1301 | + DH_set0_pqg(tmpdh, p, NULL, g); 1302 | + } else { 1303 | + tmpdh = DH_get_2048_256(); 1304 | } 1305 | 1306 | + ScopedDH dh(tmpdh); 1307 | + 1308 | if (!dh || !SSL_CTX_set_tmp_dh(ssl_ctx.get(), dh.get())) { 1309 | return nullptr; 1310 | } 1311 | diff --git a/ssl/test/packeted_bio.cc b/ssl/test/packeted_bio.cc 1312 | index dd97df1..824c427 100644 1313 | --- a/ssl/test/packeted_bio.cc 1314 | +++ b/ssl/test/packeted_bio.cc 1315 | @@ -24,8 +24,6 @@ 1316 | 1317 | namespace { 1318 | 1319 | -extern BIO_METHOD g_packeted_bio_method; 1320 | - 1321 | const uint8_t kOpcodePacket = 'P'; 1322 | const uint8_t kOpcodeTimeout = 'T'; 1323 | 1324 | @@ -48,7 +46,7 @@ static int ReadAll(BIO *bio, uint8_t *out, size_t len) { 1325 | } 1326 | 1327 | static int PacketedWrite(BIO *bio, const char *in, int inl) { 1328 | - if (bio->next_bio == NULL) { 1329 | + if (BIO_next(bio) == NULL) { 1330 | return 0; 1331 | } 1332 | 1333 | @@ -61,14 +59,14 @@ static int PacketedWrite(BIO *bio, const char *in, int inl) { 1334 | header[2] = (inl >> 16) & 0xff; 1335 | header[3] = (inl >> 8) & 0xff; 1336 | header[4] = inl & 0xff; 1337 | - int ret = BIO_write(bio->next_bio, header, sizeof(header)); 1338 | + int ret = BIO_write(BIO_next(bio), header, sizeof(header)); 1339 | if (ret <= 0) { 1340 | BIO_copy_next_retry(bio); 1341 | return ret; 1342 | } 1343 | 1344 | // Write the buffer. 1345 | - ret = BIO_write(bio->next_bio, in, inl); 1346 | + ret = BIO_write(BIO_next(bio), in, inl); 1347 | if (ret < 0 || (inl > 0 && ret == 0)) { 1348 | BIO_copy_next_retry(bio); 1349 | return ret; 1350 | @@ -78,7 +76,7 @@ static int PacketedWrite(BIO *bio, const char *in, int inl) { 1351 | } 1352 | 1353 | static int PacketedRead(BIO *bio, char *out, int outl) { 1354 | - if (bio->next_bio == NULL) { 1355 | + if (BIO_next(bio) == NULL) { 1356 | return 0; 1357 | } 1358 | 1359 | @@ -86,7 +84,7 @@ static int PacketedRead(BIO *bio, char *out, int outl) { 1360 | 1361 | // Read the opcode. 1362 | uint8_t opcode; 1363 | - int ret = ReadAll(bio->next_bio, &opcode, sizeof(opcode)); 1364 | + int ret = ReadAll(BIO_next(bio), &opcode, sizeof(opcode)); 1365 | if (ret <= 0) { 1366 | BIO_copy_next_retry(bio); 1367 | return ret; 1368 | @@ -104,7 +102,7 @@ static int PacketedRead(BIO *bio, char *out, int outl) { 1369 | 1370 | // Read the length prefix. 1371 | uint8_t len_bytes[4]; 1372 | - ret = ReadAll(bio->next_bio, len_bytes, sizeof(len_bytes)); 1373 | + ret = ReadAll(BIO_next(bio), len_bytes, sizeof(len_bytes)); 1374 | if (ret <= 0) { 1375 | BIO_copy_next_retry(bio); 1376 | return ret; 1377 | @@ -116,7 +114,7 @@ static int PacketedRead(BIO *bio, char *out, int outl) { 1378 | if (buf == NULL) { 1379 | return -1; 1380 | } 1381 | - ret = ReadAll(bio->next_bio, buf, len); 1382 | + ret = ReadAll(BIO_next(bio), buf, len); 1383 | if (ret <= 0) { 1384 | fprintf(stderr, "Packeted BIO was truncated\n"); 1385 | return -1; 1386 | @@ -131,17 +129,17 @@ static int PacketedRead(BIO *bio, char *out, int outl) { 1387 | } 1388 | 1389 | static long PacketedCtrl(BIO *bio, int cmd, long num, void *ptr) { 1390 | - if (bio->next_bio == NULL) { 1391 | + if (BIO_next(bio) == NULL) { 1392 | return 0; 1393 | } 1394 | BIO_clear_retry_flags(bio); 1395 | - int ret = BIO_ctrl(bio->next_bio, cmd, num, ptr); 1396 | + int ret = BIO_ctrl(BIO_next(bio), cmd, num, ptr); 1397 | BIO_copy_next_retry(bio); 1398 | return ret; 1399 | } 1400 | 1401 | static int PacketedNew(BIO *bio) { 1402 | - bio->init = 1; 1403 | + BIO_set_init(bio, 1); 1404 | return 1; 1405 | } 1406 | 1407 | @@ -150,37 +148,42 @@ static int PacketedFree(BIO *bio) { 1408 | return 0; 1409 | } 1410 | 1411 | - bio->init = 0; 1412 | + BIO_set_init(bio, 0); 1413 | return 1; 1414 | } 1415 | 1416 | static long PacketedCallbackCtrl(BIO *bio, int cmd, bio_info_cb fp) { 1417 | - if (bio->next_bio == NULL) { 1418 | + if (BIO_next(bio) == NULL) { 1419 | return 0; 1420 | } 1421 | - return BIO_callback_ctrl(bio->next_bio, cmd, fp); 1422 | + return BIO_callback_ctrl(BIO_next(bio), cmd, fp); 1423 | } 1424 | 1425 | -BIO_METHOD g_packeted_bio_method = { 1426 | - BIO_TYPE_FILTER, 1427 | - "packeted bio", 1428 | - PacketedWrite, 1429 | - PacketedRead, 1430 | - NULL /* puts */, 1431 | - NULL /* gets */, 1432 | - PacketedCtrl, 1433 | - PacketedNew, 1434 | - PacketedFree, 1435 | - PacketedCallbackCtrl, 1436 | -}; 1437 | - 1438 | +static BIO_METHOD *g_packeted_bio_method = NULL; 1439 | + 1440 | +static const BIO_METHOD *PacketedMethod(void) 1441 | +{ 1442 | + if (g_packeted_bio_method == NULL) { 1443 | + g_packeted_bio_method = BIO_meth_new(BIO_TYPE_FILTER, "packeted bio"); 1444 | + if ( g_packeted_bio_method == NULL 1445 | + || !BIO_meth_set_write(g_packeted_bio_method, PacketedWrite) 1446 | + || !BIO_meth_set_read(g_packeted_bio_method, PacketedRead) 1447 | + || !BIO_meth_set_ctrl(g_packeted_bio_method, PacketedCtrl) 1448 | + || !BIO_meth_set_create(g_packeted_bio_method, PacketedNew) 1449 | + || !BIO_meth_set_destroy(g_packeted_bio_method, PacketedFree) 1450 | + || !BIO_meth_set_callback_ctrl(g_packeted_bio_method, 1451 | + PacketedCallbackCtrl)) 1452 | + return NULL; 1453 | + } 1454 | + return g_packeted_bio_method; 1455 | +} 1456 | } // namespace 1457 | 1458 | ScopedBIO PacketedBioCreate(timeval *out_timeout) { 1459 | - ScopedBIO bio(BIO_new(&g_packeted_bio_method)); 1460 | + ScopedBIO bio(BIO_new(PacketedMethod())); 1461 | if (!bio) { 1462 | return nullptr; 1463 | } 1464 | - bio->ptr = out_timeout; 1465 | + BIO_set_data(bio.get(), out_timeout); 1466 | return bio; 1467 | } 1468 | -- 1469 | 2.7.4 1470 | 1471 | --------------------------------------------------------------------------------