| 1522 | } |
| 1523 | |
| 1524 | static int md_cert_read_pem(BIO *bf, apr_pool_t *p, md_cert_t **pcert) |
| 1525 | { |
| 1526 | md_cert_t *cert; |
| 1527 | X509 *x509; |
| 1528 | apr_status_t rv = APR_ENOENT; |
| 1529 | |
| 1530 | ERR_clear_error(); |
| 1531 | x509 = PEM_read_bio_X509(bf, NULL, NULL, NULL); |
| 1532 | if (x509 == NULL) goto cleanup; |
| 1533 | cert = md_cert_make(p, x509); |
| 1534 | rv = APR_SUCCESS; |
| 1535 | cleanup: |
| 1536 | *pcert = (APR_SUCCESS == rv)? cert : NULL; |
| 1537 | return rv; |
| 1538 | } |
| 1539 | |
| 1540 | apr_status_t md_cert_read_chain(apr_array_header_t *chain, apr_pool_t *p, |
| 1541 | const char *pem, apr_size_t pem_len) |
no test coverage detected