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

Function ap_setup_prelinked_modules

server/config.c:763–816  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

761}
762
763AP_DECLARE(const char *) ap_setup_prelinked_modules(process_rec *process)
764{
765 module **m;
766 module **m2;
767 const char *error;
768
769 apr_hook_global_pool=process->pconf;
770
771 rebuild_conf_hash(process->pconf, 0);
772
773 /*
774 * Initialise total_modules variable and module indices
775 */
776 total_modules = 0;
777 for (m = ap_preloaded_modules; *m != NULL; m++)
778 (*m)->module_index = total_modules++;
779
780 max_modules = total_modules + DYNAMIC_MODULE_LIMIT + 1;
781 conf_vector_length = max_modules;
782
783 /*
784 * Initialise list of loaded modules and short names
785 */
786 ap_loaded_modules = (module **)apr_palloc(process->pool,
787 sizeof(module *) * conf_vector_length);
788 if (!ap_module_short_names)
789 ap_module_short_names = ap_calloc(sizeof(char *), conf_vector_length);
790
791 if (!merger_func_cache)
792 merger_func_cache = ap_calloc(sizeof(merger_func), conf_vector_length);
793
794 if (ap_loaded_modules == NULL || ap_module_short_names == NULL
795 || merger_func_cache == NULL)
796 return "Ouch! Out of memory in ap_setup_prelinked_modules()!";
797
798 for (m = ap_preloaded_modules, m2 = ap_loaded_modules; *m != NULL; )
799 *m2++ = *m++;
800
801 *m2 = NULL;
802
803 /*
804 * Initialize chain of linked (=activate) modules
805 */
806 for (m = ap_prelinked_modules; *m != NULL; m++) {
807 error = ap_add_module(*m, process->pconf, NULL);
808 if (error) {
809 return error;
810 }
811 }
812
813 apr_hook_sort_all();
814
815 return NULL;
816}
817
818AP_DECLARE(const char *) ap_find_module_name(module *m)
819{

Callers 2

mainFunction · 0.85
http_config.hFile · 0.85

Calls 3

rebuild_conf_hashFunction · 0.85
ap_callocFunction · 0.85
ap_add_moduleFunction · 0.85

Tested by

no test coverage detected