Lines Matching refs:stack
92 modstack_init(struct module_stack* stack) in modstack_init() argument
94 stack->num = 0; in modstack_init()
95 stack->mod = NULL; in modstack_init()
99 modstack_config(struct module_stack* stack, const char* module_conf) in modstack_config() argument
103 stack->num = count_modules(module_conf); in modstack_config()
104 if(stack->num == 0) { in modstack_config()
108 if(stack->num > MAX_MODULE) { in modstack_config()
110 stack->num, MAX_MODULE); in modstack_config()
113 stack->mod = (struct module_func_block**)calloc((size_t) in modstack_config()
114 stack->num, sizeof(struct module_func_block*)); in modstack_config()
115 if(!stack->mod) { in modstack_config()
119 for(i=0; i<stack->num; i++) { in modstack_config()
120 stack->mod[i] = module_factory(&module_conf); in modstack_config()
121 if(!stack->mod[i]) { in modstack_config()
226 modstack_setup(struct module_stack* stack, const char* module_conf, in modstack_setup() argument
230 if(stack->num != 0) in modstack_setup()
231 modstack_desetup(stack, env); in modstack_setup()
233 if(!modstack_config(stack, module_conf)) { in modstack_setup()
237 for(i=0; i<stack->num; i++) { in modstack_setup()
239 i, stack->mod[i]->name); in modstack_setup()
240 fptr_ok(fptr_whitelist_mod_init(stack->mod[i]->init)); in modstack_setup()
241 if(!(*stack->mod[i]->init)(env, i)) { in modstack_setup()
243 stack->mod[i]->name); in modstack_setup()
251 modstack_desetup(struct module_stack* stack, struct module_env* env) in modstack_desetup() argument
254 for(i=0; i<stack->num; i++) { in modstack_desetup()
255 fptr_ok(fptr_whitelist_mod_deinit(stack->mod[i]->deinit)); in modstack_desetup()
256 (*stack->mod[i]->deinit)(env, i); in modstack_desetup()
258 stack->num = 0; in modstack_desetup()
259 free(stack->mod); in modstack_desetup()
260 stack->mod = NULL; in modstack_desetup()
264 modstack_find(struct module_stack* stack, const char* name) in modstack_find() argument
267 for(i=0; i<stack->num; i++) { in modstack_find()
268 if(strcmp(stack->mod[i]->name, name) == 0) in modstack_find()