Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFilip Skokan <panva.ip@gmail.com>2022-11-07 09:35:25 +0300
committerGitHub <noreply@github.com>2022-11-07 09:35:25 +0300
commit0d7a1390db5540c414996fa377f047622c2ff8f7 (patch)
tree261deeddd53ac736b867f3a9d079c0c5b7959c99
parent3759935ee29d8042d917d3ceaa768521c14413ff (diff)
crypto: handle unsupported AES ciphers in webcrypto
Refs: https://github.com/electron/electron/issues/36256 PR-URL: https://github.com/nodejs/node/pull/45321 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Shelley Vohr <shelley.vohr@gmail.com>
-rw-r--r--src/crypto/crypto_aes.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/crypto/crypto_aes.cc b/src/crypto/crypto_aes.cc
index 5f84e21fc23..c1c5bf762a7 100644
--- a/src/crypto/crypto_aes.cc
+++ b/src/crypto/crypto_aes.cc
@@ -556,7 +556,10 @@ Maybe<bool> AESCipherTraits::AdditionalConfig(
}
params->cipher = EVP_get_cipherbynid(cipher_nid);
- CHECK_NOT_NULL(params->cipher);
+ if (params->cipher == nullptr) {
+ THROW_ERR_CRYPTO_UNKNOWN_CIPHER(env);
+ return Nothing<bool>();
+ }
if (params->iv.size() <
static_cast<size_t>(EVP_CIPHER_iv_length(params->cipher))) {