From 24adebad278b88b26bdae5615b6dea94dba7b757 Mon Sep 17 00:00:00 2001 From: Dave Wallace Date: Tue, 20 Dec 2022 17:41:43 -0500 Subject: quic: fix quic plugin with openssl 3.x - load openssl legacy providers during quic init when building with openssl 3.0 or greater - re-enable quic 'make test' testcases on ubuntu-22.04 Type: fix Change-Id: Icfd429b6bc1bddf9f9937baa44cc47cd535ac5f2 Signed-off-by: Dave Wallace --- src/plugins/quic/quic.c | 1 + src/plugins/quic/quic_crypto.h | 13 +++++++++++++ test/asf/test_quic.py | 3 +-- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/plugins/quic/quic.c b/src/plugins/quic/quic.c index 898846d8ea4..3dab5eb4d07 100644 --- a/src/plugins/quic/quic.c +++ b/src/plugins/quic/quic.c @@ -2570,6 +2570,7 @@ quic_init (vlib_main_t * vm) transport_register_protocol (TRANSPORT_PROTO_QUIC, &quic_proto, FIB_PROTOCOL_IP6, ~0); + quic_load_openssl3_legacy_provider (); clib_bitmap_alloc (qm->available_crypto_engines, app_crypto_engine_n_types ()); quic_register_cipher_suite (CRYPTO_ENGINE_PICOTLS, diff --git a/src/plugins/quic/quic_crypto.h b/src/plugins/quic/quic_crypto.h index 2adb20237a3..7299b613053 100644 --- a/src/plugins/quic/quic_crypto.h +++ b/src/plugins/quic/quic_crypto.h @@ -18,6 +18,19 @@ #include +#if OPENSSL_VERSION_NUMBER >= 0x30000000L +#include + +#define quic_load_openssl3_legacy_provider() \ + do \ + { \ + (void) OSSL_PROVIDER_load (NULL, "legacy"); \ + } \ + while (0) +#else +#define quic_load_openssl3_legacy_provider() +#endif + struct quic_ctx_t; extern ptls_cipher_suite_t *quic_crypto_cipher_suites[]; diff --git a/test/asf/test_quic.py b/test/asf/test_quic.py index e7224bcbf61..6651d74d036 100644 --- a/test/asf/test_quic.py +++ b/test/asf/test_quic.py @@ -6,7 +6,7 @@ import os import subprocess import signal from config import config -from framework import tag_fixme_vpp_workers, tag_fixme_ubuntu2204 +from framework import tag_fixme_vpp_workers from framework import VppTestCase, VppTestRunner, Worker from vpp_ip_route import VppIpTable, VppIpRoute, VppRoutePath @@ -52,7 +52,6 @@ class QUICAppWorker(Worker): return False -@tag_fixme_ubuntu2204 class QUICTestCase(VppTestCase): """QUIC Test Case""" -- cgit 1.2.3-korg