Lines Matching refs:match

3229 	struct ethtool_rx_flow_match *match;
3245 match = (struct ethtool_rx_flow_match *)flow->priv;
3246 flow->rule->match.dissector = &match->dissector;
3247 flow->rule->match.mask = &match->mask;
3248 flow->rule->match.key = &match->key;
3250 match->mask.basic.n_proto = htons(0xffff);
3260 ether_addr_copy(match->key.eth_addrs.src,
3262 ether_addr_copy(match->mask.eth_addrs.src,
3266 ether_addr_copy(match->key.eth_addrs.dst,
3268 ether_addr_copy(match->mask.eth_addrs.dst,
3272 match->key.basic.n_proto = ether_spec->h_proto;
3273 match->mask.basic.n_proto = ether_m_spec->h_proto;
3281 match->key.basic.n_proto = htons(ETH_P_IP);
3287 match->key.ipv4.src = v4_spec->ip4src;
3288 match->mask.ipv4.src = v4_m_spec->ip4src;
3291 match->key.ipv4.dst = v4_spec->ip4dst;
3292 match->mask.ipv4.dst = v4_m_spec->ip4dst;
3296 match->dissector.used_keys |=
3298 match->dissector.offset[FLOW_DISSECTOR_KEY_IPV4_ADDRS] =
3302 match->key.tp.src = v4_spec->psrc;
3303 match->mask.tp.src = v4_m_spec->psrc;
3306 match->key.tp.dst = v4_spec->pdst;
3307 match->mask.tp.dst = v4_m_spec->pdst;
3311 match->dissector.used_keys |=
3313 match->dissector.offset[FLOW_DISSECTOR_KEY_PORTS] =
3317 match->key.ip.tos = v4_spec->tos;
3318 match->mask.ip.tos = v4_m_spec->tos;
3319 match->dissector.used_keys |=
3321 match->dissector.offset[FLOW_DISSECTOR_KEY_IP] =
3330 match->key.basic.n_proto = htons(ETH_P_IPV6);
3335 memcpy(&match->key.ipv6.src, v6_spec->ip6src,
3336 sizeof(match->key.ipv6.src));
3337 memcpy(&match->mask.ipv6.src, v6_m_spec->ip6src,
3338 sizeof(match->mask.ipv6.src));
3341 memcpy(&match->key.ipv6.dst, v6_spec->ip6dst,
3342 sizeof(match->key.ipv6.dst));
3343 memcpy(&match->mask.ipv6.dst, v6_m_spec->ip6dst,
3344 sizeof(match->mask.ipv6.dst));
3348 match->dissector.used_keys |=
3350 match->dissector.offset[FLOW_DISSECTOR_KEY_IPV6_ADDRS] =
3354 match->key.tp.src = v6_spec->psrc;
3355 match->mask.tp.src = v6_m_spec->psrc;
3358 match->key.tp.dst = v6_spec->pdst;
3359 match->mask.tp.dst = v6_m_spec->pdst;
3363 match->dissector.used_keys |=
3365 match->dissector.offset[FLOW_DISSECTOR_KEY_PORTS] =
3369 match->key.ip.tos = v6_spec->tclass;
3370 match->mask.ip.tos = v6_m_spec->tclass;
3371 match->dissector.used_keys |=
3373 match->dissector.offset[FLOW_DISSECTOR_KEY_IP] =
3386 match->key.basic.ip_proto = IPPROTO_TCP;
3387 match->mask.basic.ip_proto = 0xff;
3391 match->key.basic.ip_proto = IPPROTO_UDP;
3392 match->mask.basic.ip_proto = 0xff;
3396 match->dissector.used_keys |= BIT_ULL(FLOW_DISSECTOR_KEY_BASIC);
3397 match->dissector.offset[FLOW_DISSECTOR_KEY_BASIC] =
3405 match->key.vlan.vlan_tpid = ext_h_spec->vlan_etype;
3406 match->mask.vlan.vlan_tpid = ext_m_spec->vlan_etype;
3410 match->key.vlan.vlan_id =
3412 match->mask.vlan.vlan_id =
3415 match->key.vlan.vlan_dei =
3417 match->mask.vlan.vlan_dei =
3420 match->key.vlan.vlan_priority =
3422 match->mask.vlan.vlan_priority =
3428 match->dissector.used_keys |=
3430 match->dissector.offset[FLOW_DISSECTOR_KEY_VLAN] =
3438 memcpy(match->key.eth_addrs.dst, ext_h_spec->h_dest,
3440 memcpy(match->mask.eth_addrs.dst, ext_m_spec->h_dest,
3443 match->dissector.used_keys |=
3445 match->dissector.offset[FLOW_DISSECTOR_KEY_ETH_ADDRS] =