diff options
author | 2012-10-13 21:25:05 +0000 | |
---|---|---|
committer | 2012-10-13 21:25:05 +0000 | |
commit | 5cdd308e23c573f20580c33373ebbd6aaf46ca93 (patch) | |
tree | 8c9c6577606b3e2a4f852b80db635caddf559533 /lib/libcrypto/x509/x509type.c | |
parent | import OpenSSL-1.0.1c (diff) | |
download | wireguard-openbsd-5cdd308e23c573f20580c33373ebbd6aaf46ca93.tar.xz wireguard-openbsd-5cdd308e23c573f20580c33373ebbd6aaf46ca93.zip |
resolve conflicts
Diffstat (limited to 'lib/libcrypto/x509/x509type.c')
-rw-r--r-- | lib/libcrypto/x509/x509type.c | 32 |
1 files changed, 19 insertions, 13 deletions
diff --git a/lib/libcrypto/x509/x509type.c b/lib/libcrypto/x509/x509type.c index 3385ad3f67c..9702ec53103 100644 --- a/lib/libcrypto/x509/x509type.c +++ b/lib/libcrypto/x509/x509type.c @@ -100,20 +100,26 @@ int X509_certificate_type(X509 *x, EVP_PKEY *pkey) break; } - i=X509_get_signature_type(x); - switch (i) + i=OBJ_obj2nid(x->sig_alg->algorithm); + if (i && OBJ_find_sigid_algs(i, NULL, &i)) { - case EVP_PKEY_RSA: - ret|=EVP_PKS_RSA; - break; - case EVP_PKEY_DSA: - ret|=EVP_PKS_DSA; - break; - case EVP_PKEY_EC: - ret|=EVP_PKS_EC; - break; - default: - break; + + switch (i) + { + case NID_rsaEncryption: + case NID_rsa: + ret|=EVP_PKS_RSA; + break; + case NID_dsa: + case NID_dsa_2: + ret|=EVP_PKS_DSA; + break; + case NID_X9_62_id_ecPublicKey: + ret|=EVP_PKS_EC; + break; + default: + break; + } } if (EVP_PKEY_size(pk) <= 1024/8)/* /8 because it's 1024 bits we look |