Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
src: fix ValidateDSAParameters when fips is enabled
Currently, the following compilation errors are generated when
configuring --openssl-is-fips:

../src/node_crypto.cc: In function ‘bool
node::crypto::ValidateDSAParameters(EVP_PKEY*)’:
../src/node_crypto.cc:4886:55: error: ‘pkey’ was not declared in this
scope
   if (FIPS_mode() && EVP_PKEY_DSA == EVP_PKEY_base_id(pkey.get())) {
                                                       ^~~~
../src/node_crypto.cc:4886:55: note: suggested alternative: ‘key’
   if (FIPS_mode() && EVP_PKEY_DSA == EVP_PKEY_base_id(pkey.get())) {
                                                       ^~~~
                                                       key
../src/node_crypto.cc:4898:35: error: expected ‘;’ before ‘}’ token
            (L == 3072 && N == 256)
                                   ^
                                   ;
   }

This commit fixes the errors, and after this compilation is successful.
  • Loading branch information
danbev committed Sep 2, 2019
commit afc761fb175ecc9dca6a59f2b0a5b41a9e51d6cf
6 changes: 3 additions & 3 deletions src/node_crypto.cc
Original file line number Diff line number Diff line change
Expand Up @@ -4883,8 +4883,8 @@ static AllocatedBuffer Node_SignFinal(Environment* env,
static inline bool ValidateDSAParameters(EVP_PKEY* key) {
#ifdef NODE_FIPS_MODE
/* Validate DSA2 parameters from FIPS 186-4 */
if (FIPS_mode() && EVP_PKEY_DSA == EVP_PKEY_base_id(pkey.get())) {
DSA* dsa = EVP_PKEY_get0_DSA(pkey.get());
if (FIPS_mode() && EVP_PKEY_DSA == EVP_PKEY_base_id(key)) {
DSA* dsa = EVP_PKEY_get0_DSA(key);
const BIGNUM* p;
DSA_get0_pqg(dsa, &p, nullptr, nullptr);
size_t L = BN_num_bits(p);
Expand All @@ -4895,7 +4895,7 @@ static inline bool ValidateDSAParameters(EVP_PKEY* key) {
return (L == 1024 && N == 160) ||
(L == 2048 && N == 224) ||
(L == 2048 && N == 256) ||
(L == 3072 && N == 256)
(L == 3072 && N == 256);
}
#endif // NODE_FIPS_MODE

Expand Down