projects
/
openssl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Allow a zero length extension block
[openssl.git]
/
crypto
/
pkcs12
/
p12_kiss.c
diff --git
a/crypto/pkcs12/p12_kiss.c
b/crypto/pkcs12/p12_kiss.c
index fcfa986824747efbe9737e7bfce4bd301db779f0..a70fe72d09329a311dd2000022083e7acc89b847 100644
(file)
--- a/
crypto/pkcs12/p12_kiss.c
+++ b/
crypto/pkcs12/p12_kiss.c
@@
-58,7
+58,7
@@
*/
#include <stdio.h>
*/
#include <stdio.h>
-#include "cryptlib.h"
+#include "
internal/
cryptlib.h"
#include <openssl/pkcs12.h>
/* Simplified PKCS#12 routines */
#include <openssl/pkcs12.h>
/* Simplified PKCS#12 routines */
@@
-150,12
+150,10
@@
int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert,
goto err;
x = NULL;
}
goto err;
x = NULL;
}
- if (x)
- X509_free(x);
+ X509_free(x);
}
}
- if (ocerts)
- sk_X509_pop_free(ocerts, X509_free);
+ sk_X509_pop_free(ocerts, X509_free);
return 1;
return 1;
@@
-163,12
+161,10
@@
int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert,
if (pkey)
EVP_PKEY_free(*pkey);
if (pkey)
EVP_PKEY_free(*pkey);
- if (cert
&& *cert
)
+ if (cert)
X509_free(*cert);
X509_free(*cert);
- if (x)
- X509_free(x);
- if (ocerts)
- sk_X509_pop_free(ocerts, X509_free);
+ X509_free(x);
+ sk_X509_pop_free(ocerts, X509_free);
return 0;
}
return 0;
}
@@
-183,7
+179,7
@@
static int parse_pk12(PKCS12 *p12, const char *pass, int passlen,
int i, bagnid;
PKCS7 *p7;
int i, bagnid;
PKCS7 *p7;
- if (
!(asafes = PKCS12_unpack_authsafes(p12))
)
+ if (
(asafes = PKCS12_unpack_authsafes(p12)) == NULL
)
return 0;
for (i = 0; i < sk_PKCS7_num(asafes); i++) {
p7 = sk_PKCS7_value(asafes, i);
return 0;
for (i = 0; i < sk_PKCS7_num(asafes); i++) {
p7 = sk_PKCS7_value(asafes, i);
@@
-240,14
+236,14
@@
static int parse_bag(PKCS12_SAFEBAG *bag, const char *pass, int passlen,
case NID_keyBag:
if (!pkey || *pkey)
return 1;
case NID_keyBag:
if (!pkey || *pkey)
return 1;
- if (
!(*pkey = EVP_PKCS82PKEY(bag->value.keybag))
)
+ if (
(*pkey = EVP_PKCS82PKEY(bag->value.keybag)) == NULL
)
return 0;
break;
case NID_pkcs8ShroudedKeyBag:
if (!pkey || *pkey)
return 1;
return 0;
break;
case NID_pkcs8ShroudedKeyBag:
if (!pkey || *pkey)
return 1;
- if (
!(p8 = PKCS12_decrypt_skey(bag, pass, passlen))
)
+ if (
(p8 = PKCS12_decrypt_skey(bag, pass, passlen)) == NULL
)
return 0;
*pkey = EVP_PKCS82PKEY(p8);
PKCS8_PRIV_KEY_INFO_free(p8);
return 0;
*pkey = EVP_PKCS82PKEY(p8);
PKCS8_PRIV_KEY_INFO_free(p8);
@@
-258,7
+254,7
@@
static int parse_bag(PKCS12_SAFEBAG *bag, const char *pass, int passlen,
case NID_certBag:
if (M_PKCS12_cert_bag_type(bag) != NID_x509Certificate)
return 1;
case NID_certBag:
if (M_PKCS12_cert_bag_type(bag) != NID_x509Certificate)
return 1;
- if (
!(x509 = PKCS12_certbag2x509(bag))
)
+ if (
(x509 = PKCS12_certbag2x509(bag)) == NULL
)
return 0;
if (lkid && !X509_keyid_set1(x509, lkid->data, lkid->length)) {
X509_free(x509);
return 0;
if (lkid && !X509_keyid_set1(x509, lkid->data, lkid->length)) {
X509_free(x509);