Fix for bug in pkcs12 program and typo in ASN1_tag2str().
This commit is contained in:
parent
3908cdf442
commit
2d681b779c
4
CHANGES
4
CHANGES
@ -4,6 +4,10 @@
|
|||||||
|
|
||||||
Changes between 0.9.4 and 0.9.5 [xx XXX 1999]
|
Changes between 0.9.4 and 0.9.5 [xx XXX 1999]
|
||||||
|
|
||||||
|
*) Fix for pkcs12 program. It was hashing an invalid certificate pointer
|
||||||
|
when producing the local key id.
|
||||||
|
[Richard Levitte <levitte@stacken.kth.se>]
|
||||||
|
|
||||||
*) New option -dhparam in s_server. This allows a DH parameter file to be
|
*) New option -dhparam in s_server. This allows a DH parameter file to be
|
||||||
stated explicitly. If it is not stated then it tries the first server
|
stated explicitly. If it is not stated then it tries the first server
|
||||||
certificate file. The previous behaviour hard coded the filename
|
certificate file. The previous behaviour hard coded the filename
|
||||||
|
@ -281,13 +281,13 @@ int MAIN(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (export_cert) {
|
if (export_cert) {
|
||||||
EVP_PKEY *key;
|
EVP_PKEY *key;
|
||||||
STACK *bags, *safes;
|
STACK *bags, *safes;
|
||||||
PKCS12_SAFEBAG *bag;
|
PKCS12_SAFEBAG *bag;
|
||||||
PKCS8_PRIV_KEY_INFO *p8;
|
PKCS8_PRIV_KEY_INFO *p8;
|
||||||
PKCS7 *authsafe;
|
PKCS7 *authsafe;
|
||||||
X509 *cert = NULL, *ucert = NULL;
|
X509 *ucert = NULL;
|
||||||
STACK_OF(X509) *certs;
|
STACK_OF(X509) *certs;
|
||||||
char *catmp;
|
char *catmp;
|
||||||
int i;
|
int i;
|
||||||
@ -313,7 +313,7 @@ if (export_cert) {
|
|||||||
for(i = 0; i < sk_X509_num(certs); i++) {
|
for(i = 0; i < sk_X509_num(certs); i++) {
|
||||||
ucert = sk_X509_value(certs, i);
|
ucert = sk_X509_value(certs, i);
|
||||||
if(X509_check_private_key(ucert, key)) {
|
if(X509_check_private_key(ucert, key)) {
|
||||||
X509_digest(cert, EVP_sha1(), keyid, &keyidlen);
|
X509_digest(ucert, EVP_sha1(), keyid, &keyidlen);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -354,6 +354,7 @@ if (export_cert) {
|
|||||||
|
|
||||||
/* We now have loads of certificates: include them all */
|
/* We now have loads of certificates: include them all */
|
||||||
for(i = 0; i < sk_X509_num(certs); i++) {
|
for(i = 0; i < sk_X509_num(certs); i++) {
|
||||||
|
X509 *cert = NULL;
|
||||||
cert = sk_X509_value(certs, i);
|
cert = sk_X509_value(certs, i);
|
||||||
bag = M_PKCS12_x5092certbag(cert);
|
bag = M_PKCS12_x5092certbag(cert);
|
||||||
/* If it matches private key set id */
|
/* If it matches private key set id */
|
||||||
|
@ -371,7 +371,7 @@ const char *ASN1_tag2str(int tag)
|
|||||||
"ENUMERATED", "<ASN1 11>", "UTF8STRING", "<ASN1 13>", /* 10-13 */
|
"ENUMERATED", "<ASN1 11>", "UTF8STRING", "<ASN1 13>", /* 10-13 */
|
||||||
"<ASN1 14>", "<ASN1 15>", "SEQUENCE", "SET", /* 15-17 */
|
"<ASN1 14>", "<ASN1 15>", "SEQUENCE", "SET", /* 15-17 */
|
||||||
"NUMERICSTRING", "PRINTABLESTRING", "T61STRING", /* 18-20 */
|
"NUMERICSTRING", "PRINTABLESTRING", "T61STRING", /* 18-20 */
|
||||||
"VIDEOTEXSTRING", "IA5STRING", "UTCTIME" "GENERALIZEDTIME", /* 21-24 */
|
"VIDEOTEXSTRING", "IA5STRING", "UTCTIME","GENERALIZEDTIME", /* 21-24 */
|
||||||
"GRAPHICSTRING", "VISIBLESTRING", "GENERALSTRING", /* 25-27 */
|
"GRAPHICSTRING", "VISIBLESTRING", "GENERALSTRING", /* 25-27 */
|
||||||
"UNIVERSALSTRING", "<ASN1 29>", "BMPSTRING" /* 28-30 */
|
"UNIVERSALSTRING", "<ASN1 29>", "BMPSTRING" /* 28-30 */
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user