Lines Matching refs:spec

845 	struct efx_filter_spec spec;  in efx_filter_rfs()  local
875 efx_filter_init_rx(&spec, EFX_FILTER_PRI_HINT, in efx_filter_rfs()
878 spec.match_flags = in efx_filter_rfs()
882 spec.ether_type = ether_type; in efx_filter_rfs()
891 spec.ip_proto = ip->protocol; in efx_filter_rfs()
892 spec.rem_host[0] = ip->saddr; in efx_filter_rfs()
893 spec.loc_host[0] = ip->daddr; in efx_filter_rfs()
902 spec.ip_proto = ip6->nexthdr; in efx_filter_rfs()
903 memcpy(spec.rem_host, &ip6->saddr, sizeof(ip6->saddr)); in efx_filter_rfs()
904 memcpy(spec.loc_host, &ip6->daddr, sizeof(ip6->daddr)); in efx_filter_rfs()
908 spec.rem_port = ports[0]; in efx_filter_rfs()
909 spec.loc_port = ports[1]; in efx_filter_rfs()
911 rc = efx->type->filter_rfs_insert(efx, &spec); in efx_filter_rfs()
923 (spec.ip_proto == IPPROTO_TCP) ? "TCP" : "UDP", in efx_filter_rfs()
924 spec.rem_host, ntohs(ports[0]), spec.loc_host, in efx_filter_rfs()
929 (spec.ip_proto == IPPROTO_TCP) ? "TCP" : "UDP", in efx_filter_rfs()
930 spec.rem_host, ntohs(ports[0]), spec.loc_host, in efx_filter_rfs()
974 bool efx_filter_is_mc_recipient(const struct efx_filter_spec *spec) in efx_filter_is_mc_recipient() argument
976 if (!(spec->flags & EFX_FILTER_FLAG_RX) || in efx_filter_is_mc_recipient()
977 spec->dmaq_id == EFX_FILTER_RX_DMAQ_ID_DROP) in efx_filter_is_mc_recipient()
980 if (spec->match_flags & in efx_filter_is_mc_recipient()
982 is_multicast_ether_addr(spec->loc_mac)) in efx_filter_is_mc_recipient()
985 if ((spec->match_flags & in efx_filter_is_mc_recipient()
988 if (spec->ether_type == htons(ETH_P_IP) && in efx_filter_is_mc_recipient()
989 ipv4_is_multicast(spec->loc_host[0])) in efx_filter_is_mc_recipient()
991 if (spec->ether_type == htons(ETH_P_IPV6) && in efx_filter_is_mc_recipient()
992 ((const u8 *)spec->loc_host)[0] == 0xff) in efx_filter_is_mc_recipient()