Lines Matching defs:key
139 if (eq_tun_id_and_vni((u8 *)&node->geneve->cfg.info.key.tun_id, vni) &&
140 addr == node->geneve->cfg.info.key.u.ipv4.dst)
158 if (eq_tun_id_and_vni((u8 *)&node->geneve->cfg.info.key.tun_id, vni) &&
159 ipv6_addr_equal(&addr6, &node->geneve->cfg.info.key.u.ipv6.dst))
655 gs = geneve_find_sock(gn, ipv6 ? AF_INET6 : AF_INET, geneve->cfg.info.key.tp_dst);
661 gs = geneve_socket_create(net, geneve->cfg.info.key.tp_dst, ipv6,
680 tunnel_id_to_vni(geneve->cfg.info.key.tun_id, vni);
727 geneveh->oam = !!(info->key.tun_flags & TUNNEL_OAM);
728 geneveh->critical = !!(info->key.tun_flags & TUNNEL_CRIT_OPT);
730 tunnel_id_to_vni(info->key.tun_id, geneveh->vni);
734 if (info->key.tun_flags & TUNNEL_GENEVE_OPT)
742 bool udp_sum = !!(info->key.tun_flags & TUNNEL_CSUM);
790 fl4->daddr = info->key.u.ipv4.dst;
791 fl4->saddr = info->key.u.ipv4.src;
795 tos = info->key.tos;
845 fl6->daddr = info->key.u.ipv6.dst;
846 fl6->saddr = info->key.u.ipv6.src;
850 prio = info->key.tos;
856 fl6->flowlabel = ip6_make_flowinfo(prio, info->key.label);
887 const struct ip_tunnel_key *key = &info->key;
901 geneve->cfg.info.key.tp_dst, sport, &full_tos);
924 unclone->key.u.ipv4.dst = fl4.saddr;
925 unclone->key.u.ipv4.src = fl4.daddr;
940 tos = ip_tunnel_ecn_encap(key->tos, ip_hdr(skb), skb);
941 ttl = key->ttl;
943 df = key->tun_flags & TUNNEL_DONT_FRAGMENT ? htons(IP_DF) : 0;
949 ttl = key->ttl;
973 tos, ttl, df, sport, geneve->cfg.info.key.tp_dst,
975 !(info->key.tun_flags & TUNNEL_CSUM));
986 const struct ip_tunnel_key *key = &info->key;
998 geneve->cfg.info.key.tp_dst, sport);
1020 unclone->key.u.ipv6.dst = fl6.saddr;
1021 unclone->key.u.ipv6.src = fl6.daddr;
1036 prio = ip_tunnel_ecn_encap(key->tos, ip_hdr(skb), skb);
1037 ttl = key->ttl;
1044 ttl = key->ttl;
1053 info->key.label, sport, geneve->cfg.info.key.tp_dst,
1054 !(info->key.tun_flags & TUNNEL_CSUM));
1127 geneve->cfg.info.key.tp_dst, sport, NULL);
1132 info->key.u.ipv4.src = fl4.saddr;
1143 geneve->cfg.info.key.tp_dst, sport);
1148 info->key.u.ipv6.src = fl6.saddr;
1154 info->key.tp_src = sport;
1155 info->key.tp_dst = geneve->cfg.info.key.tp_dst;
1317 if (info->key.tp_dst == geneve->cfg.info.key.tp_dst) {
1321 if (info->key.tun_id == geneve->cfg.info.key.tun_id &&
1322 info->key.tp_dst == geneve->cfg.info.key.tp_dst &&
1323 !memcmp(&info->key.u, &geneve->cfg.info.key.u, sizeof(info->key.u)))
1331 return !(info->key.tun_id || info->key.tun_flags || info->key.tos ||
1332 info->key.ttl || info->key.label || info->key.tp_src ||
1333 memchr_inv(&info->key.u, 0, sizeof(info->key.u)));
1340 return a->key.u.ipv4.dst == b->key.u.ipv4.dst;
1342 return ipv6_addr_equal(&a->key.u.ipv6.dst, &b->key.u.ipv6.dst);
1407 info->key.tp_dst = htons(dst_port);
1429 info->key.u.ipv4.dst =
1432 if (ipv4_is_multicast(info->key.u.ipv4.dst)) {
1447 info->key.u.ipv6.dst =
1450 if (ipv6_addr_type(&info->key.u.ipv6.dst) &
1456 if (ipv6_addr_is_multicast(&info->key.u.ipv6.dst)) {
1461 info->key.tun_flags |= TUNNEL_CSUM;
1481 if (changelink && (tunid != info->key.tun_id)) {
1485 info->key.tun_id = tunid;
1494 info->key.ttl = nla_get_u8(data[IFLA_GENEVE_TTL]);
1499 info->key.tos = nla_get_u8(data[IFLA_GENEVE_TOS]);
1505 info->key.label = nla_get_be32(data[IFLA_GENEVE_LABEL]) &
1507 if (info->key.label && (!(info->mode & IP_TUNNEL_INFO_IPV6))) {
1519 info->key.tp_dst = nla_get_be16(data[IFLA_GENEVE_PORT]);
1536 info->key.tun_flags |= TUNNEL_CSUM;
1546 info->key.tun_flags &= ~TUNNEL_CSUM;
1589 struct flowi4 fl4 = { .daddr = info->key.u.ipv4.dst };
1605 rt = rt6_lookup(geneve->net, &info->key.u.ipv6.dst, NULL, 0,
1760 tunnel_id_to_vni(info->key.tun_id, tmp_vni);
1767 info->key.u.ipv4.dst))
1770 !!(info->key.tun_flags & TUNNEL_CSUM)))
1776 &info->key.u.ipv6.dst))
1779 !(info->key.tun_flags & TUNNEL_CSUM)))
1784 if (nla_put_u8(skb, IFLA_GENEVE_TTL, info->key.ttl) ||
1785 nla_put_u8(skb, IFLA_GENEVE_TOS, info->key.tos) ||
1786 nla_put_be32(skb, IFLA_GENEVE_LABEL, info->key.label))
1792 if (nla_put_be16(skb, IFLA_GENEVE_PORT, info->key.tp_dst))