| // This simulates specifying the configuration option --openssl-system-ca-path |
| // and setting it to a file that does not exist. |
| #define NODE_OPENSSL_SYSTEM_CERT_PATH "/missing/ca.pem" |
| |
| #include "crypto/crypto_context.h" |
| #include "node_options.h" |
| #include "openssl/err.h" |
| #include "gtest/gtest.h" |
| |
| /* |
| * This test verifies that a call to NewRootCertDir with the build time |
| * configuration option --openssl-system-ca-path set to an missing file, will |
| * not leave any OpenSSL errors on the OpenSSL error stack. |
| * See https://github.com/nodejs/node/issues/35456 for details. |
| */ |
| TEST(NodeCrypto, NewRootCertStore) { |
| node::per_process::cli_options->ssl_openssl_cert_store = true; |
| X509_STORE* store = node::crypto::NewRootCertStore(); |
| ASSERT_TRUE(store); |
| ASSERT_EQ(ERR_peek_error(), 0UL) << "NewRootCertStore should not have left " |
| "any errors on the OpenSSL error stack\n"; |
| X509_STORE_free(store); |
| } |