Lines Matching refs:match
91 struct flow_match_control match; in cxgb4_process_flow_match() local
93 flow_rule_match_control(rule, &match); in cxgb4_process_flow_match()
94 addr_type = match.key->addr_type; in cxgb4_process_flow_match()
98 struct flow_match_basic match; in cxgb4_process_flow_match() local
101 flow_rule_match_basic(rule, &match); in cxgb4_process_flow_match()
102 ethtype_key = ntohs(match.key->n_proto); in cxgb4_process_flow_match()
103 ethtype_mask = ntohs(match.mask->n_proto); in cxgb4_process_flow_match()
115 fs->val.proto = match.key->ip_proto; in cxgb4_process_flow_match()
116 fs->mask.proto = match.mask->ip_proto; in cxgb4_process_flow_match()
120 struct flow_match_ipv4_addrs match; in cxgb4_process_flow_match() local
122 flow_rule_match_ipv4_addrs(rule, &match); in cxgb4_process_flow_match()
124 memcpy(&fs->val.lip[0], &match.key->dst, sizeof(match.key->dst)); in cxgb4_process_flow_match()
125 memcpy(&fs->val.fip[0], &match.key->src, sizeof(match.key->src)); in cxgb4_process_flow_match()
126 memcpy(&fs->mask.lip[0], &match.mask->dst, sizeof(match.mask->dst)); in cxgb4_process_flow_match()
127 memcpy(&fs->mask.fip[0], &match.mask->src, sizeof(match.mask->src)); in cxgb4_process_flow_match()
130 memcpy(&fs->nat_lip[0], &match.key->dst, sizeof(match.key->dst)); in cxgb4_process_flow_match()
131 memcpy(&fs->nat_fip[0], &match.key->src, sizeof(match.key->src)); in cxgb4_process_flow_match()
135 struct flow_match_ipv6_addrs match; in cxgb4_process_flow_match() local
137 flow_rule_match_ipv6_addrs(rule, &match); in cxgb4_process_flow_match()
139 memcpy(&fs->val.lip[0], match.key->dst.s6_addr, in cxgb4_process_flow_match()
140 sizeof(match.key->dst)); in cxgb4_process_flow_match()
141 memcpy(&fs->val.fip[0], match.key->src.s6_addr, in cxgb4_process_flow_match()
142 sizeof(match.key->src)); in cxgb4_process_flow_match()
143 memcpy(&fs->mask.lip[0], match.mask->dst.s6_addr, in cxgb4_process_flow_match()
144 sizeof(match.mask->dst)); in cxgb4_process_flow_match()
145 memcpy(&fs->mask.fip[0], match.mask->src.s6_addr, in cxgb4_process_flow_match()
146 sizeof(match.mask->src)); in cxgb4_process_flow_match()
149 memcpy(&fs->nat_lip[0], match.key->dst.s6_addr, in cxgb4_process_flow_match()
150 sizeof(match.key->dst)); in cxgb4_process_flow_match()
151 memcpy(&fs->nat_fip[0], match.key->src.s6_addr, in cxgb4_process_flow_match()
152 sizeof(match.key->src)); in cxgb4_process_flow_match()
156 struct flow_match_ports match; in cxgb4_process_flow_match() local
158 flow_rule_match_ports(rule, &match); in cxgb4_process_flow_match()
159 fs->val.lport = cpu_to_be16(match.key->dst); in cxgb4_process_flow_match()
160 fs->mask.lport = cpu_to_be16(match.mask->dst); in cxgb4_process_flow_match()
161 fs->val.fport = cpu_to_be16(match.key->src); in cxgb4_process_flow_match()
162 fs->mask.fport = cpu_to_be16(match.mask->src); in cxgb4_process_flow_match()
165 fs->nat_lport = cpu_to_be16(match.key->dst); in cxgb4_process_flow_match()
166 fs->nat_fport = cpu_to_be16(match.key->src); in cxgb4_process_flow_match()
170 struct flow_match_ip match; in cxgb4_process_flow_match() local
172 flow_rule_match_ip(rule, &match); in cxgb4_process_flow_match()
173 fs->val.tos = match.key->tos; in cxgb4_process_flow_match()
174 fs->mask.tos = match.mask->tos; in cxgb4_process_flow_match()
178 struct flow_match_enc_keyid match; in cxgb4_process_flow_match() local
180 flow_rule_match_enc_keyid(rule, &match); in cxgb4_process_flow_match()
181 fs->val.vni = be32_to_cpu(match.key->keyid); in cxgb4_process_flow_match()
182 fs->mask.vni = be32_to_cpu(match.mask->keyid); in cxgb4_process_flow_match()
190 struct flow_match_vlan match; in cxgb4_process_flow_match() local
193 flow_rule_match_vlan(rule, &match); in cxgb4_process_flow_match()
194 vlan_tci = match.key->vlan_id | (match.key->vlan_priority << in cxgb4_process_flow_match()
196 vlan_tci_mask = match.mask->vlan_id | (match.mask->vlan_priority << in cxgb4_process_flow_match()
230 struct flow_dissector *dissector = rule->match.dissector; in cxgb4_validate_flow_match()
249 struct flow_match_basic match; in cxgb4_validate_flow_match() local
251 flow_rule_match_basic(rule, &match); in cxgb4_validate_flow_match()
252 ethtype_key = ntohs(match.key->n_proto); in cxgb4_validate_flow_match()
253 ethtype_mask = ntohs(match.mask->n_proto); in cxgb4_validate_flow_match()
258 struct flow_match_ip match; in cxgb4_validate_flow_match() local
265 flow_rule_match_ip(rule, &match); in cxgb4_validate_flow_match()
266 if (match.mask->ttl) { in cxgb4_validate_flow_match()