Lines Matching refs:flow
123 struct flow_key flow; member
245 pckt->flow.port16[0] = udp->source; in parse_udp()
246 pckt->flow.port16[1] = udp->dest; in parse_udp()
248 pckt->flow.port16[0] = udp->dest; in parse_udp()
249 pckt->flow.port16[1] = udp->source; in parse_udp()
269 pckt->flow.port16[0] = tcp->source; in parse_tcp()
270 pckt->flow.port16[1] = tcp->dest; in parse_tcp()
272 pckt->flow.port16[0] = tcp->dest; in parse_tcp()
273 pckt->flow.port16[1] = tcp->source; in parse_tcp()
308 ip_suffix = pckt->flow.srcv6[3] ^ pckt->flow.port16[0]; in encap_v6()
335 __u32 ip_suffix = bpf_ntohs(pckt->flow.port16[0]); in encap_v4()
345 ip_suffix ^= pckt->flow.src; in encap_v4()
474 pckt->flow.proto = ip6h->nexthdr; in parse_icmpv6()
476 memcpy(pckt->flow.srcv6, ip6h->daddr.in6_u.u6_addr32, 16); in parse_icmpv6()
477 memcpy(pckt->flow.dstv6, ip6h->saddr.in6_u.u6_addr32, 16); in parse_icmpv6()
501 pckt->flow.proto = iph->protocol; in parse_icmp()
503 pckt->flow.src = iph->daddr; in parse_icmp()
504 pckt->flow.dst = iph->saddr; in parse_icmp()
513 return jhash_2words(jhash(pckt->flow.srcv6, 16, 12), in get_packet_hash()
514 pckt->flow.ports, 24); in get_packet_hash()
516 return jhash_2words(pckt->flow.src, pckt->flow.ports, in get_packet_hash()
534 pckt->flow.port16[0] = pckt->flow.port16[1]; in get_packet_dst()
535 memset(pckt->flow.srcv6, 0, 16); in get_packet_dst()
565 if (pckt->flow.proto == IPPROTO_UDP) in get_packet_dst()
568 bpf_map_update_elem(lru_map, &pckt->flow, &new_dst_lru, 0); in get_packet_dst()
583 dst_lru = bpf_map_lookup_elem(lru_map, &pckt->flow); in connection_table_lookup()
586 if (pckt->flow.proto == IPPROTO_UDP) { in connection_table_lookup()
616 pckt->flow.proto = *protocol; in process_l3_headers_v6()
626 memcpy(pckt->flow.srcv6, ip6h->saddr.in6_u.u6_addr32, 16); in process_l3_headers_v6()
627 memcpy(pckt->flow.dstv6, ip6h->daddr.in6_u.u6_addr32, 16); in process_l3_headers_v6()
648 pckt->flow.proto = *protocol; in process_l3_headers_v4()
658 pckt->flow.src = iph->saddr; in process_l3_headers_v4()
659 pckt->flow.dst = iph->daddr; in process_l3_headers_v4()
693 protocol = pckt.flow.proto; in process_packet()
705 memcpy(vip.vipv6, pckt.flow.dstv6, 16); in process_packet()
707 vip.vip = pckt.flow.dst; in process_packet()
708 vip.port = pckt.flow.port16[1]; in process_packet()
709 vip.proto = pckt.flow.proto; in process_packet()
717 pckt.flow.port16[1] = 0; in process_packet()
727 pckt.flow.port16[0] = 0; in process_packet()
732 if (pckt.flow.proto == IPPROTO_TCP) { in process_packet()