Lines Matching refs:rule

126 	struct flow_rule_entry *rule;  in parse_flow_tokens()  local
134 rule = &flow_rule_tbl[nb_flow_rule]; in parse_flow_tokens()
135 memset(rule, 0, sizeof(*rule)); in parse_flow_tokens()
138 rule->is_ipv4 = 1; in parse_flow_tokens()
140 rule->is_ipv4 = 0; in parse_flow_tokens()
152 if (rule->is_ipv4) { in parse_flow_tokens()
153 if (ipv4_addr_cpy(&rule->ipv4.spec.hdr.src_addr, in parse_flow_tokens()
154 &rule->ipv4.mask.hdr.src_addr, in parse_flow_tokens()
158 if (ipv6_addr_cpy(rule->ipv6.spec.hdr.src_addr, in parse_flow_tokens()
159 rule->ipv6.mask.hdr.src_addr, in parse_flow_tokens()
169 if (rule->is_ipv4) { in parse_flow_tokens()
170 if (ipv4_addr_cpy(&rule->ipv4.spec.hdr.dst_addr, in parse_flow_tokens()
171 &rule->ipv4.mask.hdr.dst_addr, in parse_flow_tokens()
175 if (ipv6_addr_cpy(rule->ipv6.spec.hdr.dst_addr, in parse_flow_tokens()
176 rule->ipv6.mask.hdr.dst_addr, in parse_flow_tokens()
190 rule->port = atoi(tokens[ti]); in parse_flow_tokens()
199 rule->queue = atoi(tokens[ti]); in parse_flow_tokens()
210 flow_init_single(struct flow_rule_entry *rule) in flow_init_single() argument
223 .index = rule->queue, in flow_init_single()
229 if (rule->is_ipv4) { in flow_init_single()
231 pattern[1].spec = &rule->ipv4.spec; in flow_init_single()
232 pattern[1].mask = &rule->ipv4.mask; in flow_init_single()
235 pattern[1].spec = &rule->ipv6.spec; in flow_init_single()
236 pattern[1].mask = &rule->ipv6.mask; in flow_init_single()
241 ret = rte_flow_validate(rule->port, &attr, pattern, action, &err); in flow_init_single()
247 rule->flow = rte_flow_create(rule->port, &attr, pattern, action, &err); in flow_init_single()
248 if (rule->flow == NULL) in flow_init_single()
255 struct flow_rule_entry *rule; in flow_init() local
259 rule = &flow_rule_tbl[i]; in flow_init()
260 flow_init_single(rule); in flow_init()
264 rule = &flow_rule_tbl[i]; in flow_init()
265 if (rule->is_ipv4) { in flow_init()
267 ipv4_hdr_print(&rule->ipv4.spec.hdr); in flow_init()
270 ipv4_hdr_print(&rule->ipv4.mask.hdr); in flow_init()
273 ipv6_hdr_print(&rule->ipv6.spec.hdr); in flow_init()
276 ipv6_hdr_print(&rule->ipv6.mask.hdr); in flow_init()
279 printf("\tPort: %d, Queue: %d", rule->port, rule->queue); in flow_init()
281 if (rule->flow == NULL) in flow_init()