| 1758 | } |
| 1759 | |
| 1760 | static const char *process_command_config(server_rec *s, |
| 1761 | apr_array_header_t *arr, |
| 1762 | ap_directive_t **conftree, |
| 1763 | apr_pool_t *p, |
| 1764 | apr_pool_t *ptemp) |
| 1765 | { |
| 1766 | const char *errmsg; |
| 1767 | cmd_parms parms; |
| 1768 | arr_elts_param_t arr_parms; |
| 1769 | |
| 1770 | arr_parms.curr_idx = 0; |
| 1771 | arr_parms.array = arr; |
| 1772 | |
| 1773 | if (ap_config_hash == NULL) { |
| 1774 | rebuild_conf_hash(s->process->pconf, 1); |
| 1775 | } |
| 1776 | |
| 1777 | parms = default_parms; |
| 1778 | parms.pool = p; |
| 1779 | parms.temp_pool = ptemp; |
| 1780 | parms.server = s; |
| 1781 | parms.override = (RSRC_CONF | OR_ALL) & ~(OR_AUTHCFG | OR_LIMIT); |
| 1782 | parms.override_opts = OPT_ALL | OPT_SYM_OWNER | OPT_MULTI; |
| 1783 | |
| 1784 | parms.config_file = ap_pcfg_open_custom(p, "-c/-C directives", |
| 1785 | &arr_parms, NULL, |
| 1786 | arr_elts_getstr, arr_elts_close); |
| 1787 | |
| 1788 | errmsg = ap_build_config(&parms, p, ptemp, conftree); |
| 1789 | ap_cfg_closefile(parms.config_file); |
| 1790 | |
| 1791 | if (errmsg) { |
| 1792 | return apr_pstrcat(p, "Syntax error in -C/-c directive: ", errmsg, |
| 1793 | NULL); |
| 1794 | } |
| 1795 | |
| 1796 | return NULL; |
| 1797 | } |
| 1798 | |
| 1799 | /** |
| 1800 | * Used by -D DUMP_INCLUDES to output the config file "tree". |
no test coverage detected