only close the handshake fuzz runner once #2740
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This should fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=25400.
What's happening here is the following: The client receives an EncryptedExtensions message that contains an invalid QUIC Transport Parameter extension as well as an invalid ALPN. The TLS stack therefore sends a TLS alert, while the QUIC stack at the same time throws a TRANSPORT_PARAMETER error.
As the TLS handshake is running in its own Go routine, which of these errors occurs first is undefined, and the QUIC specification doesn't require any order here. The important thing here is that only the first of these errors should be processed (in the case of a QUIC connection, it would be sent out in a CONNECTION_CLOSE frame). The fuzz setup should reflect this.