diff options
author | Dave Wallace <dwallacelf@gmail.com> | 2022-12-20 17:41:43 -0500 |
---|---|---|
committer | Beno�t Ganne <bganne@cisco.com> | 2022-12-21 14:51:34 +0000 |
commit | 24adebad278b88b26bdae5615b6dea94dba7b757 (patch) | |
tree | 9e5ba3e43d7162b42011cef70be3376e7c53071c | |
parent | 15952b261f92959ca14cf6679efc318c12e90de6 (diff) |
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 <dwallacelf@gmail.com>
-rw-r--r-- | src/plugins/quic/quic.c | 1 | ||||
-rw-r--r-- | src/plugins/quic/quic_crypto.h | 13 | ||||
-rw-r--r-- | 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 <quicly.h> +#if OPENSSL_VERSION_NUMBER >= 0x30000000L +#include <openssl/provider.h> + +#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""" |