From d90b8033d724bbefd5bec1cd0e05ebdd3f056bcb Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Mon, 18 Dec 2017 16:47:51 -0500 Subject: [PATCH] Clear the error queue in fuzzer-mode Channel ID hooks. Otherwise it leaves something on the error queue and confuses SSL_get_error, should the handshake state machine fail immediately afterwards because of a BIO-level error. Change-Id: I2c7b5e31368b9c5b2efa324166f52972430d6074 Reviewed-on: https://boringssl-review.googlesource.com/24247 Reviewed-by: Steven Valdez Commit-Queue: David Benjamin CQ-Verified: CQ bot account: commit-bot@chromium.org --- ssl/t1_lib.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/ssl/t1_lib.cc b/ssl/t1_lib.cc index 5a91b7ac5..34ad41025 100644 --- a/ssl/t1_lib.cc +++ b/ssl/t1_lib.cc @@ -3264,6 +3264,7 @@ int tls1_verify_channel_id(SSL_HANDSHAKE *hs, const SSLMessage &msg) { int sig_ok = ECDSA_do_verify(digest, digest_len, sig.get(), key.get()); #if defined(BORINGSSL_UNSAFE_FUZZER_MODE) sig_ok = 1; + ERR_clear_error(); #endif if (!sig_ok) { OPENSSL_PUT_ERROR(SSL, SSL_R_CHANNEL_ID_SIGNATURE_INVALID);