diff options
author | beck <> | 2000-03-19 11:13:58 +0000 |
---|---|---|
committer | beck <> | 2000-03-19 11:13:58 +0000 |
commit | 796d609550df3a33fc11468741c5d2f6d3df4c11 (patch) | |
tree | 6c6d539061caa20372dad0ac4ddb1dfae2fbe7fe /src/lib/libcrypto/x509/x_all.c | |
parent | 5be3114c1fd7e0dfea1e38d3abb4cbba75244419 (diff) | |
download | openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.tar.gz openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.tar.bz2 openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.zip |
OpenSSL 0.9.5 merge
*warning* this bumps shared lib minors for libssl and libcrypto from 2.1 to 2.2
if you are using the ssl26 packages for ssh and other things to work you will
need to get new ones (see ~beck/libsslsnap/<arch>) on cvs or ~beck/src-patent.tar.gz on cvs
Diffstat (limited to 'src/lib/libcrypto/x509/x_all.c')
-rw-r--r-- | src/lib/libcrypto/x509/x_all.c | 100 |
1 files changed, 97 insertions, 3 deletions
diff --git a/src/lib/libcrypto/x509/x_all.c b/src/lib/libcrypto/x509/x_all.c index f2af895df0..d2bf3c8e1c 100644 --- a/src/lib/libcrypto/x509/x_all.c +++ b/src/lib/libcrypto/x509/x_all.c | |||
@@ -285,10 +285,22 @@ RSA *d2i_RSAPublicKey_fp(FILE *fp, RSA **rsa) | |||
285 | (unsigned char **)(rsa))); | 285 | (unsigned char **)(rsa))); |
286 | } | 286 | } |
287 | 287 | ||
288 | RSA *d2i_RSA_PUBKEY_fp(FILE *fp, RSA **rsa) | ||
289 | { | ||
290 | return((RSA *)ASN1_d2i_fp((char *(*)()) | ||
291 | RSA_new,(char *(*)())d2i_RSA_PUBKEY, (fp), | ||
292 | (unsigned char **)(rsa))); | ||
293 | } | ||
294 | |||
288 | int i2d_RSAPublicKey_fp(FILE *fp, RSA *rsa) | 295 | int i2d_RSAPublicKey_fp(FILE *fp, RSA *rsa) |
289 | { | 296 | { |
290 | return(ASN1_i2d_fp(i2d_RSAPublicKey,fp,(unsigned char *)rsa)); | 297 | return(ASN1_i2d_fp(i2d_RSAPublicKey,fp,(unsigned char *)rsa)); |
291 | } | 298 | } |
299 | |||
300 | int i2d_RSA_PUBKEY_fp(FILE *fp, RSA *rsa) | ||
301 | { | ||
302 | return(ASN1_i2d_fp(i2d_RSA_PUBKEY,fp,(unsigned char *)rsa)); | ||
303 | } | ||
292 | #endif | 304 | #endif |
293 | 305 | ||
294 | RSA *d2i_RSAPrivateKey_bio(BIO *bp, RSA **rsa) | 306 | RSA *d2i_RSAPrivateKey_bio(BIO *bp, RSA **rsa) |
@@ -310,10 +322,22 @@ RSA *d2i_RSAPublicKey_bio(BIO *bp, RSA **rsa) | |||
310 | (unsigned char **)(rsa))); | 322 | (unsigned char **)(rsa))); |
311 | } | 323 | } |
312 | 324 | ||
325 | RSA *d2i_RSA_PUBKEY_bio(BIO *bp, RSA **rsa) | ||
326 | { | ||
327 | return((RSA *)ASN1_d2i_bio((char *(*)()) | ||
328 | RSA_new,(char *(*)())d2i_RSA_PUBKEY, (bp), | ||
329 | (unsigned char **)(rsa))); | ||
330 | } | ||
331 | |||
313 | int i2d_RSAPublicKey_bio(BIO *bp, RSA *rsa) | 332 | int i2d_RSAPublicKey_bio(BIO *bp, RSA *rsa) |
314 | { | 333 | { |
315 | return(ASN1_i2d_bio(i2d_RSAPublicKey,bp,(unsigned char *)rsa)); | 334 | return(ASN1_i2d_bio(i2d_RSAPublicKey,bp,(unsigned char *)rsa)); |
316 | } | 335 | } |
336 | |||
337 | int i2d_RSA_PUBKEY_bio(BIO *bp, RSA *rsa) | ||
338 | { | ||
339 | return(ASN1_i2d_bio(i2d_RSA_PUBKEY,bp,(unsigned char *)rsa)); | ||
340 | } | ||
317 | #endif | 341 | #endif |
318 | 342 | ||
319 | #ifndef NO_DSA | 343 | #ifndef NO_DSA |
@@ -329,6 +353,18 @@ int i2d_DSAPrivateKey_fp(FILE *fp, DSA *dsa) | |||
329 | { | 353 | { |
330 | return(ASN1_i2d_fp(i2d_DSAPrivateKey,fp,(unsigned char *)dsa)); | 354 | return(ASN1_i2d_fp(i2d_DSAPrivateKey,fp,(unsigned char *)dsa)); |
331 | } | 355 | } |
356 | |||
357 | DSA *d2i_DSA_PUBKEY_fp(FILE *fp, DSA **dsa) | ||
358 | { | ||
359 | return((DSA *)ASN1_d2i_fp((char *(*)()) | ||
360 | DSA_new,(char *(*)())d2i_DSA_PUBKEY, (fp), | ||
361 | (unsigned char **)(dsa))); | ||
362 | } | ||
363 | |||
364 | int i2d_DSA_PUBKEY_fp(FILE *fp, DSA *dsa) | ||
365 | { | ||
366 | return(ASN1_i2d_fp(i2d_DSA_PUBKEY,fp,(unsigned char *)dsa)); | ||
367 | } | ||
332 | #endif | 368 | #endif |
333 | 369 | ||
334 | DSA *d2i_DSAPrivateKey_bio(BIO *bp, DSA **dsa) | 370 | DSA *d2i_DSAPrivateKey_bio(BIO *bp, DSA **dsa) |
@@ -342,6 +378,19 @@ int i2d_DSAPrivateKey_bio(BIO *bp, DSA *dsa) | |||
342 | { | 378 | { |
343 | return(ASN1_i2d_bio(i2d_DSAPrivateKey,bp,(unsigned char *)dsa)); | 379 | return(ASN1_i2d_bio(i2d_DSAPrivateKey,bp,(unsigned char *)dsa)); |
344 | } | 380 | } |
381 | |||
382 | DSA *d2i_DSA_PUBKEY_bio(BIO *bp, DSA **dsa) | ||
383 | { | ||
384 | return((DSA *)ASN1_d2i_bio((char *(*)()) | ||
385 | DSA_new,(char *(*)())d2i_DSA_PUBKEY, (bp), | ||
386 | (unsigned char **)(dsa))); | ||
387 | } | ||
388 | |||
389 | int i2d_DSA_PUBKEY_bio(BIO *bp, DSA *dsa) | ||
390 | { | ||
391 | return(ASN1_i2d_bio(i2d_DSA_PUBKEY,bp,(unsigned char *)dsa)); | ||
392 | } | ||
393 | |||
345 | #endif | 394 | #endif |
346 | 395 | ||
347 | X509_ALGOR *X509_ALGOR_dup(X509_ALGOR *xn) | 396 | X509_ALGOR *X509_ALGOR_dup(X509_ALGOR *xn) |
@@ -362,19 +411,19 @@ X509_NAME_ENTRY *X509_NAME_ENTRY_dup(X509_NAME_ENTRY *ne) | |||
362 | (char *(*)())d2i_X509_NAME_ENTRY,(char *)ne)); | 411 | (char *(*)())d2i_X509_NAME_ENTRY,(char *)ne)); |
363 | } | 412 | } |
364 | 413 | ||
365 | int X509_digest(X509 *data, EVP_MD *type, unsigned char *md, | 414 | int X509_digest(X509 *data, const EVP_MD *type, unsigned char *md, |
366 | unsigned int *len) | 415 | unsigned int *len) |
367 | { | 416 | { |
368 | return(ASN1_digest((int (*)())i2d_X509,type,(char *)data,md,len)); | 417 | return(ASN1_digest((int (*)())i2d_X509,type,(char *)data,md,len)); |
369 | } | 418 | } |
370 | 419 | ||
371 | int X509_NAME_digest(X509_NAME *data, EVP_MD *type, unsigned char *md, | 420 | int X509_NAME_digest(X509_NAME *data, const EVP_MD *type, unsigned char *md, |
372 | unsigned int *len) | 421 | unsigned int *len) |
373 | { | 422 | { |
374 | return(ASN1_digest((int (*)())i2d_X509_NAME,type,(char *)data,md,len)); | 423 | return(ASN1_digest((int (*)())i2d_X509_NAME,type,(char *)data,md,len)); |
375 | } | 424 | } |
376 | 425 | ||
377 | int PKCS7_ISSUER_AND_SERIAL_digest(PKCS7_ISSUER_AND_SERIAL *data, EVP_MD *type, | 426 | int PKCS7_ISSUER_AND_SERIAL_digest(PKCS7_ISSUER_AND_SERIAL *data, const EVP_MD *type, |
378 | unsigned char *md, unsigned int *len) | 427 | unsigned char *md, unsigned int *len) |
379 | { | 428 | { |
380 | return(ASN1_digest((int (*)())i2d_PKCS7_ISSUER_AND_SERIAL,type, | 429 | return(ASN1_digest((int (*)())i2d_PKCS7_ISSUER_AND_SERIAL,type, |
@@ -420,6 +469,29 @@ int i2d_PKCS8_PRIV_KEY_INFO_fp(FILE *fp, PKCS8_PRIV_KEY_INFO *p8inf) | |||
420 | { | 469 | { |
421 | return(ASN1_i2d_fp(i2d_PKCS8_PRIV_KEY_INFO,fp,(unsigned char *)p8inf)); | 470 | return(ASN1_i2d_fp(i2d_PKCS8_PRIV_KEY_INFO,fp,(unsigned char *)p8inf)); |
422 | } | 471 | } |
472 | |||
473 | int i2d_PKCS8PrivateKeyInfo_fp(FILE *fp, EVP_PKEY *key) | ||
474 | { | ||
475 | PKCS8_PRIV_KEY_INFO *p8inf; | ||
476 | int ret; | ||
477 | p8inf = EVP_PKEY2PKCS8(key); | ||
478 | if(!p8inf) return 0; | ||
479 | ret = i2d_PKCS8_PRIV_KEY_INFO_fp(fp, p8inf); | ||
480 | PKCS8_PRIV_KEY_INFO_free(p8inf); | ||
481 | return ret; | ||
482 | } | ||
483 | |||
484 | int i2d_PrivateKey_fp(FILE *fp, EVP_PKEY *pkey) | ||
485 | { | ||
486 | return(ASN1_i2d_fp(i2d_PrivateKey,fp,(unsigned char *)pkey)); | ||
487 | } | ||
488 | |||
489 | EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a) | ||
490 | { | ||
491 | return((EVP_PKEY *)ASN1_d2i_fp((char *(*)())EVP_PKEY_new, | ||
492 | (char *(*)())d2i_AutoPrivateKey, (fp),(unsigned char **)(a))); | ||
493 | } | ||
494 | |||
423 | #endif | 495 | #endif |
424 | 496 | ||
425 | PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO_bio(BIO *bp, | 497 | PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO_bio(BIO *bp, |
@@ -435,3 +507,25 @@ int i2d_PKCS8_PRIV_KEY_INFO_bio(BIO *bp, PKCS8_PRIV_KEY_INFO *p8inf) | |||
435 | { | 507 | { |
436 | return(ASN1_i2d_bio(i2d_PKCS8_PRIV_KEY_INFO,bp,(unsigned char *)p8inf)); | 508 | return(ASN1_i2d_bio(i2d_PKCS8_PRIV_KEY_INFO,bp,(unsigned char *)p8inf)); |
437 | } | 509 | } |
510 | |||
511 | int i2d_PKCS8PrivateKeyInfo_bio(BIO *bp, EVP_PKEY *key) | ||
512 | { | ||
513 | PKCS8_PRIV_KEY_INFO *p8inf; | ||
514 | int ret; | ||
515 | p8inf = EVP_PKEY2PKCS8(key); | ||
516 | if(!p8inf) return 0; | ||
517 | ret = i2d_PKCS8_PRIV_KEY_INFO_bio(bp, p8inf); | ||
518 | PKCS8_PRIV_KEY_INFO_free(p8inf); | ||
519 | return ret; | ||
520 | } | ||
521 | |||
522 | int i2d_PrivateKey_bio(BIO *bp, EVP_PKEY *pkey) | ||
523 | { | ||
524 | return(ASN1_i2d_bio(i2d_PrivateKey,bp,(unsigned char *)pkey)); | ||
525 | } | ||
526 | |||
527 | EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a) | ||
528 | { | ||
529 | return((EVP_PKEY *)ASN1_d2i_bio((char *(*)())EVP_PKEY_new, | ||
530 | (char *(*)())d2i_AutoPrivateKey, (bp),(unsigned char **)(a))); | ||
531 | } | ||