diff options
author | Hugo Landau <hlandau@openssl.org> | 2023-10-31 15:58:21 +0000 |
---|---|---|
committer | Hugo Landau <hlandau@openssl.org> | 2023-11-02 08:12:20 +0000 |
commit | 6366192d56d22f44992aa891634085865b12d418 (patch) | |
tree | 6907f446c43ecfb825a63539290496289be076c0 /test | |
parent | 4febab7d808c2c746ded9424ceff4163bdae3278 (diff) |
QUIC MULTISTREAM TEST: Fix script 38 stochastic failure on Windows
The QUIC fault injector frame injection functionality injects injected
frames on whatever EL we happen to be using to generate a packet in.
This means we sometimes inject the frame into a packet type it is not
allowed to be in, causing a different error code to be generated.
Fix this by making sure the connection is fully established before
trying to generate the frame in question.
Fixes #22348.
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22578)
(cherry picked from commit a6eb287a667ccbc241c59b23b151672e450bda4b)
Diffstat (limited to 'test')
-rw-r--r-- | test/quic_multistream_test.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/test/quic_multistream_test.c b/test/quic_multistream_test.c index 25cd83db34..795a8973a1 100644 --- a/test/quic_multistream_test.c +++ b/test/quic_multistream_test.c @@ -3316,8 +3316,15 @@ static const struct script_op script_38[] = { OP_C_CONNECT_WAIT () OP_C_SET_DEFAULT_STREAM_MODE(SSL_DEFAULT_STREAM_MODE_NONE) - OP_S_NEW_STREAM_UNI (b, S_UNI_ID(0)) + OP_C_NEW_STREAM_UNI (a, C_UNI_ID(0)) + OP_C_WRITE (a, "apple", 5) + + OP_S_BIND_STREAM_ID (a, C_UNI_ID(0)) + OP_S_READ_EXPECT (a, "apple", 5) + OP_SET_INJECT_WORD (C_BIDI_ID(0) + 1, OSSL_QUIC_FRAME_TYPE_STREAM_DATA_BLOCKED) + + OP_S_NEW_STREAM_UNI (b, S_UNI_ID(0)) OP_S_WRITE (b, "orange", 5) OP_C_EXPECT_CONN_CLOSE_INFO(QUIC_ERR_STREAM_STATE_ERROR,0,0) |