Lines Matching refs:irs

129 	struct gen_p *irs;  in irs_gen_acc()  local
136 if (!(irs = memget(sizeof *irs))) { in irs_gen_acc()
141 memset(irs, 0x5e, sizeof *irs); in irs_gen_acc()
142 irs->options = strdup(options); in irs_gen_acc()
143 irs->res = NULL; in irs_gen_acc()
144 irs->free_res = NULL; in irs_gen_acc()
145 memset(irs->accessors, 0, sizeof irs->accessors); in irs_gen_acc()
146 memset(irs->map_rules, 0, sizeof irs->map_rules); in irs_gen_acc()
147 init_map_rules(irs, conf_file); in irs_gen_acc()
148 acc->private = irs; in irs_gen_acc()
174 struct gen_p *irs = (struct gen_p *)this->private; in gen_res_get() local
176 if (irs->res == NULL) { in gen_res_get()
185 if (((irs->res->options & RES_INIT) == 0U) && res_ninit(irs->res) < 0) in gen_res_get()
188 return (irs->res); in gen_res_get()
194 struct gen_p *irs = (struct gen_p *)this->private; in gen_res_set() local
201 if (irs->res && irs->free_res) { in gen_res_set()
202 res_nclose(irs->res); in gen_res_set()
203 (*irs->free_res)(irs->res); in gen_res_set()
206 irs->res = res; in gen_res_set()
207 irs->free_res = free_res; in gen_res_set()
210 for (rule = irs->map_rules[irs_ho]; rule; rule = rule->next) { in gen_res_set()
215 for (rule = irs->map_rules[irs_nw]; rule; rule = rule->next) { in gen_res_set()
225 struct gen_p *irs = (struct gen_p *)this->private; in gen_close() local
230 while (irs->map_rules[n] != NULL) in gen_close()
231 irs->map_rules[n] = release_rule(irs->map_rules[n]); in gen_close()
236 if (irs->accessors[n].gr != NULL) in gen_close()
237 (*irs->accessors[n].gr->close)(irs->accessors[n].gr); in gen_close()
238 if (irs->accessors[n].pw != NULL) in gen_close()
239 (*irs->accessors[n].pw->close)(irs->accessors[n].pw); in gen_close()
240 if (irs->accessors[n].sv != NULL) in gen_close()
241 (*irs->accessors[n].sv->close)(irs->accessors[n].sv); in gen_close()
242 if (irs->accessors[n].pr != NULL) in gen_close()
243 (*irs->accessors[n].pr->close)(irs->accessors[n].pr); in gen_close()
244 if (irs->accessors[n].ho != NULL) in gen_close()
245 (*irs->accessors[n].ho->close)(irs->accessors[n].ho); in gen_close()
246 if (irs->accessors[n].nw != NULL) in gen_close()
247 (*irs->accessors[n].nw->close)(irs->accessors[n].nw); in gen_close()
248 if (irs->accessors[n].ng != NULL) in gen_close()
249 (*irs->accessors[n].ng->close)(irs->accessors[n].ng); in gen_close()
251 if (irs->accessors[n].acc != NULL) in gen_close()
252 (*irs->accessors[n].acc->close)(irs->accessors[n].acc); in gen_close()
256 free((void*)irs->options); in gen_close()
258 if (irs->res && irs->free_res) in gen_close()
259 (*irs->free_res)(irs->res); in gen_close()
262 memput(irs, sizeof *irs); in gen_close()
289 add_rule(struct gen_p *irs, in add_rule() argument
316 new->inst = &irs->accessors[acc]; in add_rule()
340 rules = &irs->map_rules[map]; in add_rule()
351 inst = &irs->accessors[acc]; in add_rule()
353 inst->acc = (*accs[acc])(irs->options); in add_rule()
375 default_map_rules(struct gen_p *irs) { in default_map_rules() argument
377 add_rule(irs, irs_gr, irs_lcl, ""); in default_map_rules()
378 add_rule(irs, irs_pw, irs_lcl, ""); in default_map_rules()
379 add_rule(irs, irs_sv, irs_lcl, ""); in default_map_rules()
380 add_rule(irs, irs_pr, irs_lcl, ""); in default_map_rules()
383 add_rule(irs, irs_ho, irs_dns, ""); in default_map_rules()
385 add_rule(irs, irs_ho, irs_dns, "continue"); in default_map_rules()
386 add_rule(irs, irs_ho, irs_lcl, ""); in default_map_rules()
389 add_rule(irs, irs_ho, irs_dns, "continue"); in default_map_rules()
390 add_rule(irs, irs_ho, irs_lcl, ""); in default_map_rules()
392 add_rule(irs, irs_nw, irs_dns, "continue"); in default_map_rules()
393 add_rule(irs, irs_nw, irs_lcl, ""); in default_map_rules()
394 add_rule(irs, irs_ng, irs_lcl, ""); in default_map_rules()
398 init_map_rules(struct gen_p *irs, const char *conf_file) { in init_map_rules() argument
404 default_map_rules(irs); in init_map_rules()
414 default_map_rules(irs); in init_map_rules()
452 add_rule(irs, map, acc, options); in init_map_rules()