From cfd3bb1785581def14fe8851906887d167b2f0f3 Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Thu, 7 Sep 2000 13:04:27 +0000 Subject: Add docs for BIO_find_type() and friends. Added function BIO_next() otherwise you can't traverse a chain without accessing BIO internals. --- crypto/bio/bio.h | 1 + crypto/bio/bio_lib.c | 6 ++++++ crypto/pkcs7/pk7_doit.c | 4 ++-- 3 files changed, 9 insertions(+), 2 deletions(-) (limited to 'crypto') diff --git a/crypto/bio/bio.h b/crypto/bio/bio.h index 0e1a16ce62..fd23a15bc0 100644 --- a/crypto/bio/bio.h +++ b/crypto/bio/bio.h @@ -524,6 +524,7 @@ BIO * BIO_push(BIO *b,BIO *append); BIO * BIO_pop(BIO *b); void BIO_free_all(BIO *a); BIO * BIO_find_type(BIO *b,int bio_type); +BIO * BIO_next(BIO *b); BIO * BIO_get_retry_BIO(BIO *bio, int *reason); int BIO_get_retry_reason(BIO *bio); BIO * BIO_dup_chain(BIO *in); diff --git a/crypto/bio/bio_lib.c b/crypto/bio/bio_lib.c index ffdec3725d..fa32df041e 100644 --- a/crypto/bio/bio_lib.c +++ b/crypto/bio/bio_lib.c @@ -436,6 +436,12 @@ BIO *BIO_find_type(BIO *bio, int type) return(NULL); } +BIO *BIO_next(BIO *b) + { + if(!b) return NULL; + return b->next_bio; + } + void BIO_free_all(BIO *bio) { BIO *b; diff --git a/crypto/pkcs7/pk7_doit.c b/crypto/pkcs7/pk7_doit.c index 7acd11e057..2768247818 100644 --- a/crypto/pkcs7/pk7_doit.c +++ b/crypto/pkcs7/pk7_doit.c @@ -534,7 +534,7 @@ int PKCS7_dataFinal(PKCS7 *p7, BIO *bio) if (EVP_MD_CTX_type(mdc) == j) break; else - btmp=btmp->next_bio; + btmp=BIO_next(btmp); } /* We now have the EVP_MD_CTX, lets do the @@ -726,7 +726,7 @@ int PKCS7_signatureVerify(BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si, } if (EVP_MD_CTX_type(mdc) == md_type) break; - btmp=btmp->next_bio; + btmp=BIO_next(btmp); } /* mdc is the digest ctx that we want, unless there are attributes, -- cgit v1.2.3