diff options
Diffstat (limited to 'apps/pkcs12.c')
-rw-r--r-- | apps/pkcs12.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/apps/pkcs12.c b/apps/pkcs12.c index 823d97085d..857a2a10c0 100644 --- a/apps/pkcs12.c +++ b/apps/pkcs12.c @@ -899,7 +899,6 @@ int dump_certs_keys_p12(BIO *out, const PKCS12 *p12, const char *pass, const EVP_CIPHER *enc) { STACK_OF(PKCS7) *asafes = NULL; - STACK_OF(PKCS12_SAFEBAG) *bags; int i, bagnid; int ret = 0; PKCS7 *p7; @@ -907,6 +906,8 @@ int dump_certs_keys_p12(BIO *out, const PKCS12 *p12, const char *pass, if ((asafes = PKCS12_unpack_authsafes(p12)) == NULL) return 0; for (i = 0; i < sk_PKCS7_num(asafes); i++) { + STACK_OF(PKCS12_SAFEBAG) *bags; + p7 = sk_PKCS7_value(asafes, i); bagnid = OBJ_obj2nid(p7->type); if (bagnid == NID_pkcs7_data) { @@ -922,7 +923,7 @@ int dump_certs_keys_p12(BIO *out, const PKCS12 *p12, const char *pass, } else { continue; } - if (!bags) + if (bags == NULL) goto err; if (!dump_certs_pkeys_bags(out, bags, pass, passlen, options, pempass, enc)) { @@ -930,7 +931,6 @@ int dump_certs_keys_p12(BIO *out, const PKCS12 *p12, const char *pass, goto err; } sk_PKCS12_SAFEBAG_pop_free(bags, PKCS12_SAFEBAG_free); - bags = NULL; } ret = 1; |