276
281
#ifndef OPENSSL_NO_FP_API
277
282
DSA *d2i_DSAPrivateKey_fp(FILE *fp, DSA **dsa)
279
return((DSA *)ASN1_d2i_fp((char *(*)())
280
DSA_new,(char *(*)())d2i_DSAPrivateKey, (fp),
281
(unsigned char **)(dsa)));
284
return ASN1_d2i_fp_of(DSA,DSA_new,d2i_DSAPrivateKey,fp,dsa);
284
287
int i2d_DSAPrivateKey_fp(FILE *fp, DSA *dsa)
286
return(ASN1_i2d_fp(i2d_DSAPrivateKey,fp,(unsigned char *)dsa));
289
return ASN1_i2d_fp_of_const(DSA,i2d_DSAPrivateKey,fp,dsa);
289
292
DSA *d2i_DSA_PUBKEY_fp(FILE *fp, DSA **dsa)
291
return((DSA *)ASN1_d2i_fp((char *(*)())
292
DSA_new,(char *(*)())d2i_DSA_PUBKEY, (fp),
293
(unsigned char **)(dsa)));
294
return ASN1_d2i_fp_of(DSA,DSA_new,d2i_DSA_PUBKEY,fp,dsa);
296
297
int i2d_DSA_PUBKEY_fp(FILE *fp, DSA *dsa)
298
return(ASN1_i2d_fp(i2d_DSA_PUBKEY,fp,(unsigned char *)dsa));
299
return ASN1_i2d_fp_of(DSA,i2d_DSA_PUBKEY,fp,dsa);
302
303
DSA *d2i_DSAPrivateKey_bio(BIO *bp, DSA **dsa)
304
return((DSA *)ASN1_d2i_bio((char *(*)())
305
DSA_new,(char *(*)())d2i_DSAPrivateKey, (bp),
306
(unsigned char **)(dsa)));
305
return ASN1_d2i_bio_of(DSA,DSA_new,d2i_DSAPrivateKey,bp,dsa
309
309
int i2d_DSAPrivateKey_bio(BIO *bp, DSA *dsa)
311
return(ASN1_i2d_bio(i2d_DSAPrivateKey,bp,(unsigned char *)dsa));
311
return ASN1_i2d_bio_of_const(DSA,i2d_DSAPrivateKey,bp,dsa);
314
314
DSA *d2i_DSA_PUBKEY_bio(BIO *bp, DSA **dsa)
316
return((DSA *)ASN1_d2i_bio((char *(*)())
317
DSA_new,(char *(*)())d2i_DSA_PUBKEY, (bp),
318
(unsigned char **)(dsa)));
316
return ASN1_d2i_bio_of(DSA,DSA_new,d2i_DSA_PUBKEY,bp,dsa);
321
319
int i2d_DSA_PUBKEY_bio(BIO *bp, DSA *dsa)
323
return(ASN1_i2d_bio(i2d_DSA_PUBKEY,bp,(unsigned char *)dsa));
321
return ASN1_i2d_bio_of(DSA,i2d_DSA_PUBKEY,bp,dsa);
326
#ifndef OPENSSL_NO_EC
327
#ifndef OPENSSL_NO_FP_API
328
EC_KEY *d2i_EC_PUBKEY_fp(FILE *fp, EC_KEY **eckey)
330
return ASN1_d2i_fp_of(EC_KEY,EC_KEY_new,d2i_EC_PUBKEY,fp,eckey);
333
int i2d_EC_PUBKEY_fp(FILE *fp, EC_KEY *eckey)
335
return ASN1_i2d_fp_of(EC_KEY,i2d_EC_PUBKEY,fp,eckey);
338
EC_KEY *d2i_ECPrivateKey_fp(FILE *fp, EC_KEY **eckey)
340
return ASN1_d2i_fp_of(EC_KEY,EC_KEY_new,d2i_ECPrivateKey,fp,eckey);
343
int i2d_ECPrivateKey_fp(FILE *fp, EC_KEY *eckey)
345
return ASN1_i2d_fp_of(EC_KEY,i2d_ECPrivateKey,fp,eckey);
348
EC_KEY *d2i_EC_PUBKEY_bio(BIO *bp, EC_KEY **eckey)
350
return ASN1_d2i_bio_of(EC_KEY,EC_KEY_new,d2i_EC_PUBKEY,bp,eckey);
353
int i2d_EC_PUBKEY_bio(BIO *bp, EC_KEY *ecdsa)
355
return ASN1_i2d_bio_of(EC_KEY,i2d_EC_PUBKEY,bp,ecdsa);
358
EC_KEY *d2i_ECPrivateKey_bio(BIO *bp, EC_KEY **eckey)
360
return ASN1_d2i_bio_of(EC_KEY,EC_KEY_new,d2i_ECPrivateKey,bp,eckey);
363
int i2d_ECPrivateKey_bio(BIO *bp, EC_KEY *eckey)
365
return ASN1_i2d_bio_of(EC_KEY,i2d_ECPrivateKey,bp,eckey);
328
370
int X509_pubkey_digest(const X509 *data, const EVP_MD *type, unsigned char *md,
329
371
unsigned int *len)
369
411
#ifndef OPENSSL_NO_FP_API
370
412
X509_SIG *d2i_PKCS8_fp(FILE *fp, X509_SIG **p8)
372
return((X509_SIG *)ASN1_d2i_fp((char *(*)())X509_SIG_new,
373
(char *(*)())d2i_X509_SIG, (fp),(unsigned char **)(p8)));
414
return ASN1_d2i_fp_of(X509_SIG,X509_SIG_new,d2i_X509_SIG,fp,p8);
376
417
int i2d_PKCS8_fp(FILE *fp, X509_SIG *p8)
378
return(ASN1_i2d_fp(i2d_X509_SIG,fp,(unsigned char *)p8));
419
return ASN1_i2d_fp_of(X509_SIG,i2d_X509_SIG,fp,p8);
382
423
X509_SIG *d2i_PKCS8_bio(BIO *bp, X509_SIG **p8)
384
return((X509_SIG *)ASN1_d2i_bio((char *(*)())X509_SIG_new,
385
(char *(*)())d2i_X509_SIG, (bp),(unsigned char **)(p8)));
425
return ASN1_d2i_bio_of(X509_SIG,X509_SIG_new,d2i_X509_SIG,bp,p8);
388
428
int i2d_PKCS8_bio(BIO *bp, X509_SIG *p8)
390
return(ASN1_i2d_bio(i2d_X509_SIG,bp,(unsigned char *)p8));
430
return ASN1_i2d_bio_of(X509_SIG,i2d_X509_SIG,bp,p8);
393
433
#ifndef OPENSSL_NO_FP_API
394
434
PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO_fp(FILE *fp,
395
435
PKCS8_PRIV_KEY_INFO **p8inf)
397
return((PKCS8_PRIV_KEY_INFO *)ASN1_d2i_fp(
398
(char *(*)())PKCS8_PRIV_KEY_INFO_new,
399
(char *(*)())d2i_PKCS8_PRIV_KEY_INFO, (fp),
400
(unsigned char **)(p8inf)));
437
return ASN1_d2i_fp_of(PKCS8_PRIV_KEY_INFO,PKCS8_PRIV_KEY_INFO_new,
438
d2i_PKCS8_PRIV_KEY_INFO,fp,p8inf);
403
441
int i2d_PKCS8_PRIV_KEY_INFO_fp(FILE *fp, PKCS8_PRIV_KEY_INFO *p8inf)
405
return(ASN1_i2d_fp(i2d_PKCS8_PRIV_KEY_INFO,fp,(unsigned char *)p8inf));
443
return ASN1_i2d_fp_of(PKCS8_PRIV_KEY_INFO,i2d_PKCS8_PRIV_KEY_INFO,fp,
408
447
int i2d_PKCS8PrivateKeyInfo_fp(FILE *fp, EVP_PKEY *key)
419
458
int i2d_PrivateKey_fp(FILE *fp, EVP_PKEY *pkey)
421
return(ASN1_i2d_fp(i2d_PrivateKey,fp,(unsigned char *)pkey));
460
return ASN1_i2d_fp_of(EVP_PKEY,i2d_PrivateKey,fp,pkey);
424
463
EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a)
426
return((EVP_PKEY *)ASN1_d2i_fp((char *(*)())EVP_PKEY_new,
427
(char *(*)())d2i_AutoPrivateKey, (fp),(unsigned char **)(a)));
465
return ASN1_d2i_fp_of(EVP_PKEY,EVP_PKEY_new,d2i_AutoPrivateKey,fp,a);
430
468
int i2d_PUBKEY_fp(FILE *fp, EVP_PKEY *pkey)
432
return(ASN1_i2d_fp(i2d_PUBKEY,fp,(unsigned char *)pkey));
470
return ASN1_i2d_fp_of(EVP_PKEY,i2d_PUBKEY,fp,pkey);
435
473
EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a)
437
return((EVP_PKEY *)ASN1_d2i_fp((char *(*)())EVP_PKEY_new,
438
(char *(*)())d2i_PUBKEY, (fp),(unsigned char **)(a)));
475
return ASN1_d2i_fp_of(EVP_PKEY,EVP_PKEY_new,d2i_PUBKEY,fp,a);
443
480
PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO_bio(BIO *bp,
444
481
PKCS8_PRIV_KEY_INFO **p8inf)
446
return((PKCS8_PRIV_KEY_INFO *)ASN1_d2i_bio(
447
(char *(*)())PKCS8_PRIV_KEY_INFO_new,
448
(char *(*)())d2i_PKCS8_PRIV_KEY_INFO, (bp),
449
(unsigned char **)(p8inf)));
483
return ASN1_d2i_bio_of(PKCS8_PRIV_KEY_INFO,PKCS8_PRIV_KEY_INFO_new,
484
d2i_PKCS8_PRIV_KEY_INFO,bp,p8inf);
452
487
int i2d_PKCS8_PRIV_KEY_INFO_bio(BIO *bp, PKCS8_PRIV_KEY_INFO *p8inf)
454
return(ASN1_i2d_bio(i2d_PKCS8_PRIV_KEY_INFO,bp,(unsigned char *)p8inf));
489
return ASN1_i2d_bio_of(PKCS8_PRIV_KEY_INFO,i2d_PKCS8_PRIV_KEY_INFO,bp,
457
493
int i2d_PKCS8PrivateKeyInfo_bio(BIO *bp, EVP_PKEY *key)
468
504
int i2d_PrivateKey_bio(BIO *bp, EVP_PKEY *pkey)
470
return(ASN1_i2d_bio(i2d_PrivateKey,bp,(unsigned char *)pkey));
506
return ASN1_i2d_bio_of(EVP_PKEY,i2d_PrivateKey,bp,pkey);
473
509
EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a)
475
return((EVP_PKEY *)ASN1_d2i_bio((char *(*)())EVP_PKEY_new,
476
(char *(*)())d2i_AutoPrivateKey, (bp),(unsigned char **)(a)));
511
return ASN1_d2i_bio_of(EVP_PKEY,EVP_PKEY_new,d2i_AutoPrivateKey,bp,a);
479
514
int i2d_PUBKEY_bio(BIO *bp, EVP_PKEY *pkey)
481
return(ASN1_i2d_bio(i2d_PUBKEY,bp,(unsigned char *)pkey));
516
return ASN1_i2d_bio_of(EVP_PKEY,i2d_PUBKEY,bp,pkey);
484
519
EVP_PKEY *d2i_PUBKEY_bio(BIO *bp, EVP_PKEY **a)
486
return((EVP_PKEY *)ASN1_d2i_bio((char *(*)())EVP_PKEY_new,
487
(char *(*)())d2i_PUBKEY, (bp),(unsigned char **)(a)));
521
return ASN1_d2i_bio_of(EVP_PKEY,EVP_PKEY_new,d2i_PUBKEY,bp,a);