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

Function status_get_cert_json_ex

modules/md/md_status.c:142–178  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

140}
141
142static apr_status_t status_get_cert_json_ex(
143 md_json_t **pjson,
144 const md_cert_t *cert,
145 const md_t *md,
146 md_reg_t *reg,
147 md_ocsp_reg_t *ocsp,
148 int with_logs,
149 apr_pool_t *p)
150{
151 md_json_t *certj, *jobj;
152 md_timeperiod_t ocsp_valid;
153 md_ocsp_cert_stat_t cert_stat;
154 const char *ari_cert_id;
155 apr_status_t rv;
156
157 if (APR_SUCCESS != (rv = status_get_cert_json(&certj, cert, p))) goto leave;
158
159 if (APR_SUCCESS == md_cert_get_ari_cert_id(&ari_cert_id, cert, p))
160 md_json_sets(ari_cert_id, certj, MD_KEY_ARI_CERT_ID, NULL);
161
162 if (md->stapling && ocsp) {
163 rv = md_ocsp_get_meta(&cert_stat, &ocsp_valid, ocsp, cert, p, md);
164 if (APR_SUCCESS == rv) {
165 md_json_sets(md_ocsp_cert_stat_name(cert_stat), certj, MD_KEY_OCSP, MD_KEY_STATUS, NULL);
166 md_json_set_timeperiod(&ocsp_valid, certj, MD_KEY_OCSP, MD_KEY_VALID, NULL);
167 }
168 else if (!APR_STATUS_IS_ENOENT(rv)) goto leave;
169 rv = APR_SUCCESS;
170 if (APR_SUCCESS == job_loadj(&jobj, MD_SG_OCSP, md->name, reg, with_logs, p)) {
171 md_json_setj(jobj, certj, MD_KEY_OCSP, MD_KEY_RENEWAL, NULL);
172 }
173 }
174
175leave:
176 *pjson = (APR_SUCCESS == rv)? certj : NULL;
177 return rv;
178}
179
180static int get_cert_count(const md_t *md, int from_staging)
181{

Callers 1

status_get_certs_jsonFunction · 0.85

Calls 7

md_cert_get_ari_cert_idFunction · 0.85
md_json_setsFunction · 0.85
md_ocsp_get_metaFunction · 0.85
md_ocsp_cert_stat_nameFunction · 0.85
md_json_set_timeperiodFunction · 0.85
md_json_setjFunction · 0.85
job_loadjFunction · 0.70

Tested by

no test coverage detected