bssl pkcs12 shouldn't crash on missing key.
PKCS#12 files may not necessarily include keys.
Change-Id: Ibb43b609783b02aa9cbb192fea377081169666ff
Reviewed-on: https://boringssl-review.googlesource.com/6456
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/tool/pkcs12.cc b/tool/pkcs12.cc
index c191531..fe830d6 100644
--- a/tool/pkcs12.cc
+++ b/tool/pkcs12.cc
@@ -128,8 +128,10 @@
return false;
}
- PEM_write_PrivateKey(stdout, key, NULL, NULL, 0, NULL, NULL);
- EVP_PKEY_free(key);
+ if (key != NULL) {
+ PEM_write_PrivateKey(stdout, key, NULL, NULL, 0, NULL, NULL);
+ EVP_PKEY_free(key);
+ }
for (size_t i = 0; i < sk_X509_num(certs); i++) {
PEM_write_X509(stdout, sk_X509_value(certs, i));