From: Hugo Landau Date: Wed, 7 Jun 2023 13:11:50 +0000 (+0100) Subject: QUIC: Correct minimal frame encoding test X-Git-Tag: openssl-3.2.0-alpha1~421 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=49a38dee0d65c6fb7ddcf9dbf76e9afa0ed3c776;p=thirdparty%2Fopenssl.git QUIC: Correct minimal frame encoding test Reviewed-by: Tomas Mraz Reviewed-by: Matt Caswell Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/21135) --- diff --git a/test/quic_multistream_test.c b/test/quic_multistream_test.c index 50a7377929d..0d473dfb53d 100644 --- a/test/quic_multistream_test.c +++ b/test/quic_multistream_test.c @@ -2918,7 +2918,7 @@ static ossl_unused int test_dyn_frame_types(int idx) for (i = 0; i < OSSL_NELEM(dyn_frame_types_script); ++i) if (s[i].op == OPK_SET_INJECT_WORD) { - s[i].arg1 = forbidden_frame_types[idx].pkt_type; + s[i].arg1 = (size_t)forbidden_frame_types[idx].pkt_type; s[i].arg2 = forbidden_frame_types[idx].frame_type; } else if (s[i].op == OPK_C_EXPECT_CONN_CLOSE_INFO) { s[i].arg2 = forbidden_frame_types[idx].expected_err; diff --git a/test/quic_wire_test.c b/test/quic_wire_test.c index c307643c1b3..f9c6688d99b 100644 --- a/test/quic_wire_test.c +++ b/test/quic_wire_test.c @@ -533,32 +533,36 @@ static int encode_case_12_dec(PACKET *pkt, ossl_ssize_t fail) { uint64_t max_streams_1 = 0, max_streams_2 = 0, frame_type_1 = 0, frame_type_2 = 0; - int is_minimal; + int is_minimal = 1, success_if; + success_if = (fail < 0 || fail >= 1); if (!TEST_int_eq(ossl_quic_wire_peek_frame_header(pkt, &frame_type_1, &is_minimal), - fail < 0 || fail >= 1)) + success_if)) return 0; - if (!TEST_true(is_minimal)) + if (!TEST_true(!success_if || is_minimal)) return 0; + success_if = (fail < 0 || fail >= 3); if (!TEST_int_eq(ossl_quic_wire_decode_frame_max_streams(pkt, &max_streams_1), - fail < 0 || fail >= 3)) + success_if)) return 0; + success_if = (fail < 0 || fail >= 4); if (!TEST_int_eq(ossl_quic_wire_peek_frame_header(pkt, &frame_type_2, &is_minimal), - fail < 0 || fail >= 4)) + success_if)) return 0; - if (!TEST_true(is_minimal)) + if (!TEST_true(!success_if || is_minimal)) return 0; + success_if = (fail < 0); if (!TEST_int_eq(ossl_quic_wire_decode_frame_max_streams(pkt, &max_streams_2), - fail < 0)) + success_if)) return 0; if ((fail < 0 || fail >= 3) @@ -672,27 +676,30 @@ static int encode_case_15_dec(PACKET *pkt, ossl_ssize_t fail) { uint64_t max_streams_1 = 0, max_streams_2 = 0, frame_type_1 = 0, frame_type_2 = 0; - int is_minimal; + int is_minimal = 1, success_if; + success_if = (fail < 0 || fail >= 1); if (!TEST_int_eq(ossl_quic_wire_peek_frame_header(pkt, &frame_type_1, &is_minimal), - fail < 0 || fail >= 1)) + success_if)) return 0; - if (!TEST_true(is_minimal)) + if (!TEST_true(!success_if || is_minimal)) return 0; + success_if = (fail < 0 || fail >= 3); if (!TEST_int_eq(ossl_quic_wire_decode_frame_streams_blocked(pkt, &max_streams_1), - fail < 0 || fail >= 3)) + success_if)) return 0; + success_if = (fail < 0 || fail >= 4); if (!TEST_int_eq(ossl_quic_wire_peek_frame_header(pkt, &frame_type_2, &is_minimal), - fail < 0 || fail >= 4)) + success_if)) return 0; - if (!TEST_true(is_minimal)) + if (!TEST_true(!success_if || is_minimal)) return 0; if (!TEST_int_eq(ossl_quic_wire_decode_frame_streams_blocked(pkt,