X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fx509%2Fx509type.c;h=8eaf102480ca058ce6413eac6ed71be1fb999e56;hp=05d6919d6ae16371d8125017b10e34a1c6aa0c58;hb=5488bb6197b9af7a4670fb88936f0b53a9af0d2f;hpb=d02b48c63a58ea4367a0e905979f140b7d090f86 diff --git a/crypto/x509/x509type.c b/crypto/x509/x509type.c index 05d6919d6a..8eaf102480 100644 --- a/crypto/x509/x509type.c +++ b/crypto/x509/x509type.c @@ -1,5 +1,5 @@ /* crypto/x509/x509type.c */ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) * All rights reserved. * * This package is an SSL implementation written @@ -58,13 +58,11 @@ #include #include "cryptlib.h" -#include "evp.h" -#include "objects.h" -#include "x509.h" +#include +#include +#include -int X509_certificate_type(x,pkey) -X509 *x; -EVP_PKEY *pkey; +int X509_certificate_type(X509 *x, EVP_PKEY *pkey) { EVP_PKEY *pk; int ret=0,i; @@ -88,6 +86,9 @@ EVP_PKEY *pkey; case EVP_PKEY_DSA: ret=EVP_PK_DSA|EVP_PKT_SIGN; break; + case EVP_PKEY_EC: + ret=EVP_PK_EC|EVP_PKT_SIGN|EVP_PKT_EXCH; + break; case EVP_PKEY_DH: ret=EVP_PK_DH|EVP_PKT_EXCH; break; @@ -104,12 +105,16 @@ EVP_PKEY *pkey; case EVP_PKS_DSA: ret|=EVP_PKS_DSA; break; + case EVP_PKS_EC: + ret|=EVP_PKS_EC; + break; default: break; } - if (EVP_PKEY_size(pkey) <= 512) + if (EVP_PKEY_size(pk) <= 512) ret|=EVP_PKT_EXP; + if(pkey==NULL) EVP_PKEY_free(pk); return(ret); }