Lines Matching defs:tuple

621 static INLINING uint64_t fill_tuple(struct bpf_sock_tuple *tuple, void *iph,
627 tuple->ipv4.daddr = ipv4->daddr;
628 tuple->ipv4.saddr = ipv4->saddr;
629 tuple->ipv4.sport = sport;
630 tuple->ipv4.dport = dport;
631 return sizeof(tuple->ipv4);
636 memcpy(&tuple->ipv6.daddr, &ipv6->daddr,
637 sizeof(tuple->ipv6.daddr));
638 memcpy(&tuple->ipv6.saddr, &ipv6->saddr,
639 sizeof(tuple->ipv6.saddr));
640 tuple->ipv6.sport = sport;
641 tuple->ipv6.dport = dport;
642 return sizeof(tuple->ipv6);
651 struct bpf_sock_tuple *tuple, uint64_t tuplen,
655 bpf_skc_lookup_tcp(skb, tuple, tuplen, BPF_F_CURRENT_NETNS, 0);
668 if (tuplen == sizeof(tuple->ipv6)) {
684 struct bpf_sock_tuple *tuple, uint64_t tuplen)
687 bpf_sk_lookup_udp(skb, tuple, tuplen, BPF_F_CURRENT_NETNS, 0);
702 struct bpf_sock_tuple *tuple, uint64_t tuplen,
707 return classify_tcp(skb, tuple, tuplen, NULL, NULL);
710 return classify_udp(skb, tuple, tuplen);
750 * the correct flow tuple.
752 struct bpf_sock_tuple tuple;
753 tuple.ipv4.saddr = ipv4->daddr;
754 tuple.ipv4.daddr = ipv4->saddr;
756 if (!pkt_parse_icmp_l4_ports(pkt, (flow_ports_t *)&tuple.ipv4.sport)) {
761 return classify_icmp(pkt->skb, ipv4->protocol, &tuple,
762 sizeof(tuple.ipv4), metrics);
804 struct bpf_sock_tuple tuple;
805 memcpy(&tuple.ipv6.saddr, &ipv6->daddr, sizeof(tuple.ipv6.saddr));
806 memcpy(&tuple.ipv6.daddr, &ipv6->saddr, sizeof(tuple.ipv6.daddr));
808 if (!pkt_parse_icmp_l4_ports(pkt, (flow_ports_t *)&tuple.ipv6.sport)) {
813 return classify_icmp(pkt->skb, l4_proto, &tuple, sizeof(tuple.ipv6),
833 struct bpf_sock_tuple tuple;
835 fill_tuple(&tuple, iph, iphlen, tcp->source, tcp->dest);
836 return classify_tcp(pkt->skb, &tuple, tuplen, iph, tcp);
851 struct bpf_sock_tuple tuple;
853 fill_tuple(&tuple, iph, iphlen, udph->source, udph->dest);
854 return classify_udp(pkt->skb, &tuple, tuplen);