Browse Source

crypto: fix memory leak in LoadPKCS12

`sk_X509_pop_free` should be used instead of `sk_X509_free` to free all
items in queue too, not just the queue itself.

PR-URL: https://github.com/nodejs/node/pull/5109
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Shigeki Ohtsu <ohtsu@iij.ad.jp>
process-exit-stdio-flushing
Fedor Indutny 9 years ago
parent
commit
106c6cfe98
  1. 2
      src/node_crypto.cc

2
src/node_crypto.cc

@ -1001,7 +1001,7 @@ void SecureContext::LoadPKCS12(const FunctionCallbackInfo<Value>& args) {
if (cert != nullptr)
X509_free(cert);
if (extra_certs != nullptr)
sk_X509_free(extra_certs);
sk_X509_pop_free(extra_certs, X509_free);
PKCS12_free(p12);
BIO_free_all(in);

Loading…
Cancel
Save