diff --git a/test/crltest.c b/test/crltest.c index 3b76f4f0ae5e3519e62802868017a14ea4119126..2c0a8153c64a058b3c2ae7654f424695999d50af 100644 --- a/test/crltest.c +++ b/test/crltest.c @@ -200,9 +200,16 @@ static BIO *glue2bio(const char **pem, char **out) */ static X509_CRL *CRL_from_strings(const char **pem) { + X509_CRL *crl; char *p; BIO *b = glue2bio(pem, &p); - X509_CRL *crl = PEM_read_bio_X509_CRL(b, NULL, NULL, NULL); + + if (b == NULL) { + OPENSSL_free(p); + return NULL; + } + + crl = PEM_read_bio_X509_CRL(b, NULL, NULL, NULL); OPENSSL_free(p); BIO_free(b); @@ -214,9 +221,16 @@ static X509_CRL *CRL_from_strings(const char **pem) */ static X509 *X509_from_strings(const char **pem) { + X509 *x; char *p; BIO *b = glue2bio(pem, &p); - X509 *x = PEM_read_bio_X509(b, NULL, NULL, NULL); + + if (b == NULL) { + OPENSSL_free(p); + return NULL; + } + + x = PEM_read_bio_X509(b, NULL, NULL, NULL); OPENSSL_free(p); BIO_free(b); @@ -363,6 +377,12 @@ static int test_reuse_crl(void) char *p; BIO *b = glue2bio(kRevokedCRL, &p); + if (b == NULL) { + OPENSSL_free(p); + X509_CRL_free(reused_crl); + return 0; + } + reused_crl = PEM_read_bio_X509_CRL(b, &reused_crl, NULL, NULL); OPENSSL_free(p);