From: Čestmír Kalina Date: Wed, 20 Jul 2022 17:07:46 +0000 (-0400) Subject: evp_test: add thread support X-Git-Tag: openssl-3.2.0-alpha1~1149 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ae1792e3d94bbd9f6c535f1784438011097adb4a;p=thirdparty%2Fopenssl.git evp_test: add thread support Signed-off-by: Čestmír Kalina Reviewed-by: Tomas Mraz Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/12256) --- diff --git a/test/evp_test.c b/test/evp_test.c index f22be43ed66..c154d89ab8b 100644 --- a/test/evp_test.c +++ b/test/evp_test.c @@ -22,6 +22,7 @@ #include #include #include +#include #include "internal/numbers.h" #include "internal/nelem.h" #include "crypto/evp.h" @@ -3570,6 +3571,10 @@ static void clear_test(EVP_TEST *t) t->err = NULL; t->skip = 0; t->meth = NULL; + +#if !defined(OPENSSL_NO_DEFAULT_THREAD_POOL) + OSSL_set_max_threads(libctx, 0); +#endif } /* Check for errors in the test structure; return 1 if okay, else 0. */ @@ -3955,6 +3960,12 @@ start: return 0; } t->reason = take_value(pp); + } else if (strcmp(pp->key, "Threads") == 0) { + if (OSSL_set_max_threads(libctx, atoi(pp->value)) == 0) { + TEST_info("skipping, '%s' threads not available: %s:%d", + pp->value, t->s.test_file, t->s.start); + t->skip = 1; + } } else { /* Must be test specific line: try to parse it */ int rv = t->meth->parse(t, pp->key, pp->value);