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

Function merge_srv_config

modules/md/mod_md.c:308–376  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

306/* post config handling */
307
308static void merge_srv_config(md_t *md, md_srv_conf_t *base_sc, apr_pool_t *p)
309{
310 const char *contact;
311
312 if (!md->sc) {
313 md->sc = base_sc;
314 }
315
316 if (!md->ca_urls && md->sc->ca_urls) {
317 md->ca_urls = apr_array_copy(p, md->sc->ca_urls);
318 }
319 if (!md->ca_proto) {
320 md->ca_proto = md_config_gets(md->sc, MD_CONFIG_CA_PROTO);
321 }
322 if (!md->ca_agreement) {
323 md->ca_agreement = md_config_gets(md->sc, MD_CONFIG_CA_AGREEMENT);
324 }
325 contact = md_config_gets(md->sc, MD_CONFIG_CA_CONTACT);
326 if (md->contacts && md->contacts->nelts > 0) {
327 /* set explicitly */
328 }
329 else if (contact && contact[0]) {
330 apr_array_clear(md->contacts);
331 APR_ARRAY_PUSH(md->contacts, const char *) =
332 md_util_schemify(p, contact, "mailto");
333 }
334 else if (md->sc->s->server_admin &&
335 strcmp(DEFAULT_ADMIN, md->sc->s->server_admin)) {
336 apr_array_clear(md->contacts);
337 APR_ARRAY_PUSH(md->contacts, const char *) =
338 md_util_schemify(p, md->sc->s->server_admin, "mailto");
339 }
340 if (md->renew_mode == MD_RENEW_DEFAULT) {
341 md->renew_mode = md_config_geti(md->sc, MD_CONFIG_DRIVE_MODE);
342 }
343 if (!md->renew_window) md_config_get_timespan(&md->renew_window, md->sc, MD_CONFIG_RENEW_WINDOW);
344 if (!md->warn_window) md_config_get_timespan(&md->warn_window, md->sc, MD_CONFIG_WARN_WINDOW);
345 if (md->transitive < 0) {
346 md->transitive = md_config_geti(md->sc, MD_CONFIG_TRANSITIVE);
347 }
348 if (!md->ca_challenges && md->sc->ca_challenges) {
349 md->ca_challenges = apr_array_copy(p, md->sc->ca_challenges);
350 }
351 if (md_pkeys_spec_is_empty(md->pks)) {
352 md->pks = md->sc->pks;
353 }
354 if (md->require_https < 0) {
355 md->require_https = md_config_geti(md->sc, MD_CONFIG_REQUIRE_HTTPS);
356 }
357 if (!md->ca_eab_kid) {
358 md->ca_eab_kid = md->sc->ca_eab_kid;
359 md->ca_eab_hmac = md->sc->ca_eab_hmac;
360 }
361 if (md->must_staple < 0) {
362 md->must_staple = md_config_geti(md->sc, MD_CONFIG_MUST_STAPLE);
363 }
364 if (md->stapling < 0) {
365 md->stapling = md_config_geti(md->sc, MD_CONFIG_STAPLING);

Callers 1

merge_mds_with_confFunction · 0.85

Calls 5

md_config_getsFunction · 0.85
md_util_schemifyFunction · 0.85
md_config_getiFunction · 0.85
md_config_get_timespanFunction · 0.85
md_pkeys_spec_is_emptyFunction · 0.85

Tested by

no test coverage detected