Skip to content

Commit

Permalink
test: do not load absolute path crypto engines twice
Browse files Browse the repository at this point in the history
Newer versions of OpenSSL now throws an error if an engine is loaded
twice by its absolute path (a second load by its id appears to be okay).

PR-URL: #41177
Refs: quictls/openssl#69
Refs: https://mta.openssl.org/pipermail/openssl-announce/2021-December/000212.html
Reviewed-By: Danielle Adams <adamzdanielle@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Derek Lewis <DerekNonGeneric@inf.is>
  • Loading branch information
richardlau authored and nodejs-github-bot committed Dec 16, 2021
1 parent 6f61c2b commit 4b5b9a8
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions test/parallel/test-crypto-engine.js
Expand Up @@ -44,10 +44,13 @@ crypto.setEngine('dynamic', crypto.constants.ENGINE_METHOD_RSA);
fs.accessSync(enginePath);

crypto.setEngine(enginePath);
crypto.setEngine(enginePath);
// OpenSSL 3.0.1 and 1.1.1m now throw errors if an engine is loaded again
// with a duplicate absolute path.
// TODO(richardlau): figure out why this fails on macOS but not Linux.
// crypto.setEngine(enginePath);

crypto.setEngine(enginePath, crypto.constants.ENGINE_METHOD_RSA);
crypto.setEngine(enginePath, crypto.constants.ENGINE_METHOD_RSA);
// crypto.setEngine(enginePath, crypto.constants.ENGINE_METHOD_RSA);
// crypto.setEngine(enginePath, crypto.constants.ENGINE_METHOD_RSA);

process.env.OPENSSL_ENGINES = execDir;

Expand Down

0 comments on commit 4b5b9a8

Please sign in to comment.