diff options
Diffstat (limited to 'src/lib/libcrypto/x509/x_all.c')
-rw-r--r-- | src/lib/libcrypto/x509/x_all.c | 38 |
1 files changed, 36 insertions, 2 deletions
diff --git a/src/lib/libcrypto/x509/x_all.c b/src/lib/libcrypto/x509/x_all.c index d2bf3c8e1c..9bd6e2a39b 100644 --- a/src/lib/libcrypto/x509/x_all.c +++ b/src/lib/libcrypto/x509/x_all.c | |||
@@ -411,13 +411,25 @@ X509_NAME_ENTRY *X509_NAME_ENTRY_dup(X509_NAME_ENTRY *ne) | |||
411 | (char *(*)())d2i_X509_NAME_ENTRY,(char *)ne)); | 411 | (char *(*)())d2i_X509_NAME_ENTRY,(char *)ne)); |
412 | } | 412 | } |
413 | 413 | ||
414 | int X509_digest(X509 *data, const EVP_MD *type, unsigned char *md, | 414 | int X509_digest(const X509 *data, const EVP_MD *type, unsigned char *md, |
415 | unsigned int *len) | 415 | unsigned int *len) |
416 | { | 416 | { |
417 | return(ASN1_digest((int (*)())i2d_X509,type,(char *)data,md,len)); | 417 | return(ASN1_digest((int (*)())i2d_X509,type,(char *)data,md,len)); |
418 | } | 418 | } |
419 | 419 | ||
420 | int X509_NAME_digest(X509_NAME *data, const EVP_MD *type, unsigned char *md, | 420 | int X509_CRL_digest(const X509_CRL *data, const EVP_MD *type, unsigned char *md, |
421 | unsigned int *len) | ||
422 | { | ||
423 | return(ASN1_digest((int (*)())i2d_X509_CRL,type,(char *)data,md,len)); | ||
424 | } | ||
425 | |||
426 | int X509_REQ_digest(const X509_REQ *data, const EVP_MD *type, unsigned char *md, | ||
427 | unsigned int *len) | ||
428 | { | ||
429 | return(ASN1_digest((int (*)())i2d_X509_REQ,type,(char *)data,md,len)); | ||
430 | } | ||
431 | |||
432 | int X509_NAME_digest(const X509_NAME *data, const EVP_MD *type, unsigned char *md, | ||
421 | unsigned int *len) | 433 | unsigned int *len) |
422 | { | 434 | { |
423 | return(ASN1_digest((int (*)())i2d_X509_NAME,type,(char *)data,md,len)); | 435 | return(ASN1_digest((int (*)())i2d_X509_NAME,type,(char *)data,md,len)); |
@@ -492,6 +504,17 @@ EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a) | |||
492 | (char *(*)())d2i_AutoPrivateKey, (fp),(unsigned char **)(a))); | 504 | (char *(*)())d2i_AutoPrivateKey, (fp),(unsigned char **)(a))); |
493 | } | 505 | } |
494 | 506 | ||
507 | int i2d_PUBKEY_fp(FILE *fp, EVP_PKEY *pkey) | ||
508 | { | ||
509 | return(ASN1_i2d_fp(i2d_PUBKEY,fp,(unsigned char *)pkey)); | ||
510 | } | ||
511 | |||
512 | EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a) | ||
513 | { | ||
514 | return((EVP_PKEY *)ASN1_d2i_fp((char *(*)())EVP_PKEY_new, | ||
515 | (char *(*)())d2i_PUBKEY, (fp),(unsigned char **)(a))); | ||
516 | } | ||
517 | |||
495 | #endif | 518 | #endif |
496 | 519 | ||
497 | PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO_bio(BIO *bp, | 520 | PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO_bio(BIO *bp, |
@@ -529,3 +552,14 @@ EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a) | |||
529 | return((EVP_PKEY *)ASN1_d2i_bio((char *(*)())EVP_PKEY_new, | 552 | return((EVP_PKEY *)ASN1_d2i_bio((char *(*)())EVP_PKEY_new, |
530 | (char *(*)())d2i_AutoPrivateKey, (bp),(unsigned char **)(a))); | 553 | (char *(*)())d2i_AutoPrivateKey, (bp),(unsigned char **)(a))); |
531 | } | 554 | } |
555 | |||
556 | int i2d_PUBKEY_bio(BIO *bp, EVP_PKEY *pkey) | ||
557 | { | ||
558 | return(ASN1_i2d_bio(i2d_PUBKEY,bp,(unsigned char *)pkey)); | ||
559 | } | ||
560 | |||
561 | EVP_PKEY *d2i_PUBKEY_bio(BIO *bp, EVP_PKEY **a) | ||
562 | { | ||
563 | return((EVP_PKEY *)ASN1_d2i_bio((char *(*)())EVP_PKEY_new, | ||
564 | (char *(*)())d2i_PUBKEY, (bp),(unsigned char **)(a))); | ||
565 | } | ||