Lines Matching refs:flow
128 struct flow_key flow; member
255 pckt->flow.port16[0] = udp->source; in parse_udp()
256 pckt->flow.port16[1] = udp->dest; in parse_udp()
258 pckt->flow.port16[0] = udp->dest; in parse_udp()
259 pckt->flow.port16[1] = udp->source; in parse_udp()
279 pckt->flow.port16[0] = tcp->source; in parse_tcp()
280 pckt->flow.port16[1] = tcp->dest; in parse_tcp()
282 pckt->flow.port16[0] = tcp->dest; in parse_tcp()
283 pckt->flow.port16[1] = tcp->source; in parse_tcp()
318 ip_suffix = pckt->flow.srcv6[3] ^ pckt->flow.port16[0]; in encap_v6()
337 __u32 ip_suffix = __builtin_bswap16(pckt->flow.port16[0]); in encap_v4()
347 ip_suffix ^= pckt->flow.src; in encap_v4()
512 pckt->flow.proto = ip6h->nexthdr; in parse_icmpv6()
514 memcpy(pckt->flow.srcv6, ip6h->daddr.in6_u.u6_addr32, 16); in parse_icmpv6()
515 memcpy(pckt->flow.dstv6, ip6h->saddr.in6_u.u6_addr32, 16); in parse_icmpv6()
539 pckt->flow.proto = iph->protocol; in parse_icmp()
541 pckt->flow.src = iph->daddr; in parse_icmp()
542 pckt->flow.dst = iph->saddr; in parse_icmp()
551 return jhash_2words(jhash(pckt->flow.srcv6, 16, 12), in get_packet_hash()
552 pckt->flow.ports, 24); in get_packet_hash()
554 return jhash_2words(pckt->flow.src, pckt->flow.ports, in get_packet_hash()
572 pckt->flow.port16[0] = pckt->flow.port16[1]; in get_packet_dst()
573 memset(pckt->flow.srcv6, 0, 16); in get_packet_dst()
603 if (pckt->flow.proto == IPPROTO_UDP) in get_packet_dst()
606 bpf_map_update_elem(lru_map, &pckt->flow, &new_dst_lru, 0); in get_packet_dst()
621 dst_lru = bpf_map_lookup_elem(lru_map, &pckt->flow); in connection_table_lookup()
624 if (pckt->flow.proto == IPPROTO_UDP) { in connection_table_lookup()
653 pckt->flow.proto = *protocol; in process_l3_headers_v6()
663 memcpy(pckt->flow.srcv6, ip6h->saddr.in6_u.u6_addr32, 16); in process_l3_headers_v6()
664 memcpy(pckt->flow.dstv6, ip6h->daddr.in6_u.u6_addr32, 16); in process_l3_headers_v6()
685 pckt->flow.proto = *protocol; in process_l3_headers_v4()
695 pckt->flow.src = iph->saddr; in process_l3_headers_v4()
696 pckt->flow.dst = iph->daddr; in process_l3_headers_v4()
731 protocol = pckt.flow.proto; in process_packet()
743 memcpy(vip.vipv6, pckt.flow.dstv6, 16); in process_packet()
745 vip.vip = pckt.flow.dst; in process_packet()
746 vip.port = pckt.flow.port16[1]; in process_packet()
747 vip.proto = pckt.flow.proto; in process_packet()
755 pckt.flow.port16[1] = 0; in process_packet()
765 pckt.flow.port16[0] = 0; in process_packet()
770 if (pckt.flow.proto == IPPROTO_TCP) { in process_packet()