MCPcopy Create free account
hub / github.com/apache/httpd / md_chain_fsave

Function md_chain_fsave

modules/md/md_crypt.c:1728–1759  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1726}
1727
1728apr_status_t md_chain_fsave(apr_array_header_t *certs, apr_pool_t *p,
1729 const char *fname, apr_fileperms_t perms)
1730{
1731 FILE *f;
1732 apr_status_t rv;
1733 const md_cert_t *cert;
1734 unsigned long err = 0;
1735 int i;
1736
1737 (void)p;
1738 rv = md_util_fopen(&f, fname, "w");
1739 if (rv == APR_SUCCESS) {
1740 apr_file_perms_set(fname, perms);
1741 ERR_clear_error();
1742 for (i = 0; i < certs->nelts; ++i) {
1743 cert = APR_ARRAY_IDX(certs, i, const md_cert_t *);
1744 assert(cert->x509);
1745
1746 PEM_write_X509(f, cert->x509);
1747
1748 if (0 < (err = ERR_get_error())) {
1749 break;
1750 }
1751
1752 }
1753 rv = fclose(f);
1754 if (err) {
1755 rv = APR_EINVAL;
1756 }
1757 }
1758 return rv;
1759}
1760
1761/**************************************************************************************************/
1762/* certificate signing requests */

Callers 2

mk_pubcertFunction · 0.85
pfs_saveFunction · 0.85

Calls 1

md_util_fopenFunction · 0.85

Tested by

no test coverage detected