Lines Matching refs:rl

134 	ilbd_rule_t	*rl;  in i_check_srv2rules()  local
145 for (rl = list_head(rlist); rl != NULL; rl = list_next(rlist, rl)) { in i_check_srv2rules()
146 r_minport = ntohs(rl->irl_minport); in i_check_srv2rules()
147 r_maxport = ntohs(rl->irl_maxport); in i_check_srv2rules()
151 if (rl->irl_topo == ILB_TOPO_DSR) { in i_check_srv2rules()
166 if (rl->irl_hcpflag == ILB_HCI_PROBE_FIX && in i_check_srv2rules()
167 rl->irl_hcport != srv_minport) { in i_check_srv2rules()
173 if ((rl->irl_topo == ILB_TOPO_DSR) && in i_check_srv2rules()
186 } else if ((rl->irl_topo == ILB_TOPO_DSR) && in i_check_srv2rules()
195 } else if (((rl->irl_topo == ILB_TOPO_NAT) || in i_check_srv2rules()
196 (rl->irl_topo == ILB_TOPO_HALF_NAT)) && in i_check_srv2rules()
212 if (rl->irl_hcpflag == ILB_HCI_PROBE_FIX && in i_check_srv2rules()
213 (rl->irl_hcport > srv_maxport || in i_check_srv2rules()
214 rl->irl_hcport < srv_minport)) { in i_check_srv2rules()
257 ilbd_rule_t *rl; in i_alloc_ilbd_rule() local
259 rl = calloc(sizeof (*rl), 1); in i_alloc_ilbd_rule()
260 if (rl != NULL && r != NULL) in i_alloc_ilbd_rule()
261 bcopy(r, &rl->irl_info, sizeof (*r)); in i_alloc_ilbd_rule()
263 return (rl); in i_alloc_ilbd_rule()
269 ilbd_rule_t *rl; in i_find_rule_byname() local
272 rl = list_head(&ilbd_rule_hlist); in i_find_rule_byname()
273 while (rl != NULL && in i_find_rule_byname()
274 strncmp(rl->irl_name, name, sizeof (rl->irl_name)) != 0) { in i_find_rule_byname()
275 rl = list_next(&ilbd_rule_hlist, rl); in i_find_rule_byname()
278 return (rl); in i_find_rule_byname()
285 ilb_get_krule(ilb_rule_info_t *rl) in ilb_get_krule() argument
291 (void) strlcpy(kcmd.name, rl->rl_name, sizeof (kcmd.name)); in ilb_get_krule()
298 rl->rl_flags = kcmd.flags; in ilb_get_krule()
299 rl->rl_ipversion = IPPROTO_2_AF(kcmd.ip_ver); in ilb_get_krule()
300 rl->rl_vip = kcmd.vip; in ilb_get_krule()
301 rl->rl_proto = kcmd.proto; in ilb_get_krule()
302 rl->rl_minport = kcmd.min_port; in ilb_get_krule()
303 rl->rl_maxport = kcmd.max_port; in ilb_get_krule()
304 rl->rl_algo = algo_impl2lib(kcmd.algo); in ilb_get_krule()
305 rl->rl_topo = topo_impl2lib(kcmd.topo); in ilb_get_krule()
306 rl->rl_stickymask = kcmd.sticky_mask; in ilb_get_krule()
307 rl->rl_nat_src_start = kcmd.nat_src_start; in ilb_get_krule()
308 rl->rl_nat_src_end = kcmd.nat_src_end; in ilb_get_krule()
309 (void) strlcpy(rl->rl_name, kcmd.name, sizeof (rl->rl_name)); in ilb_get_krule()
310 rl->rl_conndrain = kcmd.conn_drain_timeout; in ilb_get_krule()
311 rl->rl_nat_timeout = kcmd.nat_expiry; in ilb_get_krule()
312 rl->rl_sticky_timeout = kcmd.sticky_expiry; in ilb_get_krule()
1018 i_update_ksrv_rules(char *name, ilbd_sg_t *sg, ilbd_rule_t *rl) in i_update_ksrv_rules() argument
1046 kcmd->servers[i].min_port = rl->irl_minport; in i_update_ksrv_rules()
1047 kcmd->servers[i].max_port = rl->irl_maxport; in i_update_ksrv_rules()
1104 ilbd_create_rule(ilb_rule_info_t *rl, int ev_port, in ilbd_create_rule() argument
1117 if (i_find_rule_byname(rl->rl_name) != NULL) { in ilbd_create_rule()
1119 " already exists", rl->rl_name); in ilbd_create_rule()
1120 ilbd_audit_rule_event(NULL, rl, ILBD_CREATE_RULE, in ilbd_create_rule()
1125 sg = i_find_sg_byname(rl->rl_sgname); in ilbd_create_rule()
1128 " servergroup name %s", rl->rl_name, rl->rl_sgname); in ilbd_create_rule()
1129 ilbd_audit_rule_event(NULL, rl, ILBD_CREATE_RULE, in ilbd_create_rule()
1134 if ((rc = ilbd_sg_check_rule_port(sg, rl)) != ILB_STATUS_OK) { in ilbd_create_rule()
1135 ilbd_audit_rule_event(NULL, rl, ILBD_CREATE_RULE, rc, ucredp); in ilbd_create_rule()
1140 irl = i_alloc_ilbd_rule(rl); in ilbd_create_rule()
1142 ilbd_audit_rule_event(NULL, rl, ILBD_CREATE_RULE, in ilbd_create_rule()
1150 int32_t r_af = rl->rl_ipversion; in ilbd_create_rule()
1203 ilbd_audit_rule_event(NULL, rl, ILBD_CREATE_RULE, in ilbd_create_rule()
1214 ilbd_audit_rule_event(NULL, rl, ILBD_CREATE_RULE, rc, ucredp); in ilbd_create_rule()
1225 ilbd_audit_rule_event(NULL, rl, ILBD_CREATE_RULE, rc, ucredp); in ilbd_create_rule()
1250 ilbd_rule_t *rl, *del_rl; in i_add_srv2krules() local
1268 for (rl = list_head(rlist); rl != NULL; rl = list_next(rlist, rl)) { in i_add_srv2krules()
1269 (void) strlcpy(kcmd.name, rl->irl_name, sizeof (kcmd.name)); in i_add_srv2krules()
1280 kcmd.servers[0].min_port = rl->irl_minport; in i_add_srv2krules()
1281 kcmd.servers[0].max_port = rl->irl_maxport; in i_add_srv2krules()
1289 del_rl = list_prev(rlist, rl); in i_add_srv2krules()
1303 del_rl = list_prev(rlist, rl); in i_add_srv2krules()
1306 if (RULE_HAS_HC(rl)) { in i_add_srv2krules()
1307 if ((rc = ilbd_hc_add_server(rl, srv, ev_port)) != in i_add_srv2krules()
1310 " for rules %s server %s", rl->irl_name, in i_add_srv2krules()
1313 del_rl = rl; in i_add_srv2krules()
1348 ilbd_rule_t *rl, *add_rl; in i_rem_srv_frm_krules() local
1357 for (rl = list_head(rlist); rl != NULL; rl = list_next(rlist, rl)) { in i_rem_srv_frm_krules()
1358 (void) strlcpy(kcmd.name, rl->irl_name, sizeof (kcmd.name)); in i_rem_srv_frm_krules()
1363 add_rl = list_prev(rlist, rl); in i_rem_srv_frm_krules()
1377 add_rl = list_prev(rlist, rl); in i_rem_srv_frm_krules()
1380 if (RULE_HAS_HC(rl) && in i_rem_srv_frm_krules()
1381 (rc = ilbd_hc_del_server(rl, srv)) != ILB_STATUS_OK) { in i_rem_srv_frm_krules()
1383 "timer for rules %s server %s", rl->irl_name, in i_rem_srv_frm_krules()
1385 add_rl = rl; in i_rem_srv_frm_krules()