summaryrefslogtreecommitdiffstats
path: root/crypto/x509/x_all.c
diff options
context:
space:
mode:
authorBodo Möller <bodo@openssl.org>2002-02-13 18:21:51 +0000
committerBodo Möller <bodo@openssl.org>2002-02-13 18:21:51 +0000
commit4d94ae00d5614d64d4dd065860c4b00161a81f82 (patch)
treee993aa323ea753b3c0782439eb78f4f8c896a67e /crypto/x509/x_all.c
parent60d8bae30d1040a4f955e3247443b2dd4c674cde (diff)
ECDSA support
Submitted by: Nils Larsch <nla@trustcenter.de>
Diffstat (limited to 'crypto/x509/x_all.c')
-rw-r--r--crypto/x509/x_all.c53
1 files changed, 53 insertions, 0 deletions
diff --git a/crypto/x509/x_all.c b/crypto/x509/x_all.c
index fb5015cd4d..cc1ff90e9a 100644
--- a/crypto/x509/x_all.c
+++ b/crypto/x509/x_all.c
@@ -325,6 +325,59 @@ int i2d_DSA_PUBKEY_bio(BIO *bp, DSA *dsa)
#endif
+#ifndef OPENSSL_NO_ECDSA
+#ifndef OPENSSL_NO_FP_API
+ECDSA *d2i_ECDSAPrivateKey_fp(FILE *fp, ECDSA **ecdsa)
+ {
+ return((ECDSA *)ASN1_d2i_fp((char *(*)())
+ ECDSA_new,(char *(*)())d2i_ECDSAPrivateKey, (fp),
+ (unsigned char **)(ecdsa)));
+ }
+
+int i2d_ECDSAPrivateKey_fp(FILE *fp, ECDSA *ecdsa)
+ {
+ return(ASN1_i2d_fp(i2d_ECDSAPrivateKey,fp,(unsigned char *)ecdsa));
+ }
+
+ECDSA *d2i_ECDSA_PUBKEY_fp(FILE *fp, ECDSA **ecdsa)
+ {
+ return((ECDSA *)ASN1_d2i_fp((char *(*)())
+ ECDSA_new,(char *(*)())d2i_ECDSA_PUBKEY, (fp),
+ (unsigned char **)(ecdsa)));
+ }
+
+int i2d_ECDSA_PUBKEY_fp(FILE *fp, ECDSA *ecdsa)
+ {
+ return(ASN1_i2d_fp(i2d_ECDSA_PUBKEY,fp,(unsigned char *)ecdsa));
+ }
+#endif
+
+ECDSA *d2i_ECDSAPrivateKey_bio(BIO *bp, ECDSA **ecdsa)
+ {
+ return((ECDSA *)ASN1_d2i_bio((char *(*)())
+ ECDSA_new,(char *(*)())d2i_ECDSAPrivateKey, (bp),
+ (unsigned char **)(ecdsa)));
+ }
+
+int i2d_ECDSAPrivateKey_bio(BIO *bp, ECDSA *ecdsa)
+ {
+ return(ASN1_i2d_bio(i2d_ECDSAPrivateKey,bp,(unsigned char *)ecdsa));
+ }
+
+ECDSA *d2i_ECDSA_PUBKEY_bio(BIO *bp, ECDSA **ecdsa)
+ {
+ return((ECDSA *)ASN1_d2i_bio((char *(*)())
+ ECDSA_new,(char *(*)())d2i_ECDSA_PUBKEY, (bp),
+ (unsigned char **)(ecdsa)));
+ }
+
+int i2d_ECDSA_PUBKEY_bio(BIO *bp, ECDSA *ecdsa)
+ {
+ return(ASN1_i2d_bio(i2d_ECDSA_PUBKEY,bp,(unsigned char *)ecdsa));
+ }
+
+#endif
+
int X509_pubkey_digest(const X509 *data, const EVP_MD *type, unsigned char *md,
unsigned int *len)
{