diff options
author | Dr. Stephen Henson <steve@openssl.org> | 1999-10-04 21:17:47 +0000 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 1999-10-04 21:17:47 +0000 |
commit | 3ea23631d4d840429dbe026f50e8f46a5187054f (patch) | |
tree | 15149df9a4a431fd06f857575c00087cfa0e139a /crypto/x509/x_all.c | |
parent | 393f2c651d154a8d576969f24317536f89f28649 (diff) | |
download | openssl-3ea23631d4d840429dbe026f50e8f46a5187054f.tar.gz |
Add support for public key input and output in rsa and dsa utilities with some
new DSA public key functions that were missing.
Also beginning of a cache for X509_EXTENSION structures: this will allow them
to be accessed more quickly for things like certificate chain verification...
Diffstat (limited to 'crypto/x509/x_all.c')
-rw-r--r-- | crypto/x509/x_all.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/crypto/x509/x_all.c b/crypto/x509/x_all.c index f2af895df0..354d4c3f3c 100644 --- a/crypto/x509/x_all.c +++ b/crypto/x509/x_all.c @@ -329,6 +329,18 @@ int i2d_DSAPrivateKey_fp(FILE *fp, DSA *dsa) { return(ASN1_i2d_fp(i2d_DSAPrivateKey,fp,(unsigned char *)dsa)); } + +DSA *d2i_DSAPublicKey_fp(FILE *fp, DSA **dsa) + { + return((DSA *)ASN1_d2i_fp((char *(*)()) + DSA_new,(char *(*)())d2i_DSAPublicKey, (fp), + (unsigned char **)(dsa))); + } + +int i2d_DSAPublicKey_fp(FILE *fp, DSA *dsa) + { + return(ASN1_i2d_fp(i2d_DSAPublicKey,fp,(unsigned char *)dsa)); + } #endif DSA *d2i_DSAPrivateKey_bio(BIO *bp, DSA **dsa) @@ -342,6 +354,19 @@ int i2d_DSAPrivateKey_bio(BIO *bp, DSA *dsa) { return(ASN1_i2d_bio(i2d_DSAPrivateKey,bp,(unsigned char *)dsa)); } + +DSA *d2i_DSAPublicKey_bio(BIO *bp, DSA **dsa) + { + return((DSA *)ASN1_d2i_bio((char *(*)()) + DSA_new,(char *(*)())d2i_DSAPublicKey, (bp), + (unsigned char **)(dsa))); + } + +int i2d_DSAPublicKey_bio(BIO *bp, DSA *dsa) + { + return(ASN1_i2d_bio(i2d_DSAPublicKey,bp,(unsigned char *)dsa)); + } + #endif X509_ALGOR *X509_ALGOR_dup(X509_ALGOR *xn) |