From 9d963486f66a864aa67e668742b6aa6a6e72fb1f Mon Sep 17 00:00:00 2001 From: David Timber Date: Wed, 7 Jul 2021 21:21:17 +1000 Subject: Refactor: impl prne_mbedtls_verify_alp() --- src/mbedtls.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'src/mbedtls.c') diff --git a/src/mbedtls.c b/src/mbedtls.c index 7af5e80..6b8b600 100644 --- a/src/mbedtls.c +++ b/src/mbedtls.c @@ -183,3 +183,26 @@ bool prne_mbedtls_pth_handle ( } while (false); } } + +bool prne_mbedtls_verify_alp ( + const mbedtls_ssl_config *conf, + const mbedtls_ssl_context *ctx, + const char *alp) +{ + bool has_alpn = false; + + for (const char **a = conf->alpn_list; a != NULL && *a != NULL; a += 1) { + if (strcmp(*a, alp) == 0) { + has_alpn = true; + break; + } + } + + if (!has_alpn) { + // ALP verification is disabled. + return true; + } + return prne_nstreq( + mbedtls_ssl_get_alpn_protocol(ctx), + alp); +} -- cgit