Data Structures | |
struct | module_stack |
Stack of modules. More... | |
Functions | |
void | modstack_init (struct module_stack *stack) |
Init a stack of modules. | |
int | modstack_config (struct module_stack *stack, const char *module_conf) |
Read config file module settings and set up the modfunc block. | |
struct module_func_block * | module_factory (const char **str) |
Get funcblock for module name. | |
const char ** | module_list_avail (void) |
Get list of modules available. | |
int | modstack_setup (struct module_stack *stack, const char *module_conf, struct module_env *env) |
Setup modules. | |
void | modstack_desetup (struct module_stack *stack, struct module_env *env) |
Desetup the modules, deinit, delete. | |
int | modstack_find (struct module_stack *stack, const char *name) |
Find index of module by name. |
void modstack_init | ( | struct module_stack * | stack | ) |
Init a stack of modules.
stack,: | initialised as empty. |
References module_stack::mod, and module_stack::num.
Referenced by daemon_init(), and ub_ctx_create().
int modstack_config | ( | struct module_stack * | stack, | |
const char * | module_conf | |||
) |
Read config file module settings and set up the modfunc block.
stack,: | the stack of modules (empty before call). | |
module_conf,: | string what modules to insert. |
References count_modules(), log_err(), MAX_MODULE, module_stack::mod, module_factory(), module_stack::num, VERB_QUERY, and verbose().
Referenced by modstack_setup().
struct module_func_block* module_factory | ( | const char ** | str | ) | [read] |
Get funcblock for module name.
str,: | string with module name. Advanced to next value on success. The string is assumed whitespace separated list of module names. |
References module_funcs_avail(), and module_list_avail().
Referenced by modstack_config().
const char** module_list_avail | ( | void | ) |
Get list of modules available.
Referenced by module_factory(), and usage().
int modstack_setup | ( | struct module_stack * | stack, | |
const char * | module_conf, | |||
struct module_env * | env | |||
) |
Setup modules.
Assigns ids and calls module_init.
stack,: | if not empty beforehand, it will be desetup()ed. It is then modstack_configged(). | |
module_conf,: | string what modules to insert. | |
env,: | module environment which is inited by the modules. environment should have a superalloc, cfg, env.need_to_validate is set by the modules. |
References fptr_ok, fptr_whitelist_mod_init(), module_func_block::init, log_err(), module_stack::mod, modstack_config(), modstack_desetup(), module_func_block::name, module_env::need_to_validate, module_stack::num, VERB_OPS, and verbose().
Referenced by context_finalize(), and daemon_setup_modules().
void modstack_desetup | ( | struct module_stack * | stack, | |
struct module_env * | env | |||
) |
Desetup the modules, deinit, delete.
stack,: | made empty. | |
env,: | module env for module deinit() calls. |
References module_func_block::deinit, fptr_ok, fptr_whitelist_mod_deinit(), module_stack::mod, and module_stack::num.
Referenced by daemon_delete(), modstack_setup(), and ub_ctx_delete().
int modstack_find | ( | struct module_stack * | stack, | |
const char * | name | |||
) |
Find index of module by name.
stack,: | to look in | |
name,: | the name to look for |
References module_stack::mod, module_func_block::name, and module_stack::num.
Referenced by do_flush_zone(), get_rrset_bogus(), and print_mem().