Lines Matching defs:dst
143 addr == node->geneve->cfg.info.key.u.ipv4.dst)
162 ipv6_addr_equal(&addr6, &node->geneve->cfg.info.key.u.ipv6.dst))
240 /* Update tunnel dst according to Geneve options. */
256 skb_dst_set(skb, &tun_dst->dst);
766 static int geneve_build_skb(struct dst_entry *dst, struct sk_buff *skb,
780 min_headroom = LL_RESERVED_SPACE(dst->dev) + dst->header_len +
797 dst_release(dst);
821 fl4->daddr = info->key.u.ipv4.dst;
847 if (rt->dst.dev == dev) { /* is this necessary? */
853 dst_cache_set_ip4(dst_cache, &rt->dst, fl4->saddr);
867 struct dst_entry *dst = NULL;
877 fl6->daddr = info->key.u.ipv6.dst;
891 dst = dst_cache_get_ip6(dst_cache, &fl6->saddr);
892 if (dst)
893 return dst;
895 dst = ipv6_stub->ipv6_dst_lookup_flow(geneve->net, gs6->sock->sk, fl6,
897 if (IS_ERR(dst)) {
901 if (dst->dev == dev) { /* is this necessary? */
903 dst_release(dst);
908 dst_cache_set_ip6(dst_cache, dst, &fl6->saddr);
909 return dst;
937 err = skb_tunnel_check_pmtu(skb, &rt->dst,
941 dst_release(&rt->dst);
952 dst_release(&rt->dst);
956 unclone->key.u.ipv4.dst = fl4.saddr;
961 dst_release(&rt->dst);
967 dst_release(&rt->dst);
982 ttl = ttl ? : ip4_dst_hoplimit(&rt->dst);
1000 err = geneve_build_skb(&rt->dst, skb, info, xnet, sizeof(struct iphdr),
1020 struct dst_entry *dst = NULL;
1030 dst = geneve_get_v6_dst(skb, dev, gs6, &fl6, info,
1032 if (IS_ERR(dst))
1033 return PTR_ERR(dst);
1035 err = skb_tunnel_check_pmtu(skb, dst,
1039 dst_release(dst);
1049 dst_release(dst);
1053 unclone->key.u.ipv6.dst = fl6.saddr;
1058 dst_release(dst);
1064 dst_release(dst);
1078 ttl = ttl ? : ip6_dst_hoplimit(dst);
1080 err = geneve_build_skb(dst, skb, info, xnet, sizeof(struct ipv6hdr),
1085 udp_tunnel6_xmit_skb(dst, gs6->sock->sk, skb, dev,
1169 struct dst_entry *dst;
1176 dst = geneve_get_v6_dst(skb, dev, gs6, &fl6, info,
1178 if (IS_ERR(dst))
1179 return PTR_ERR(dst);
1181 dst_release(dst);
1377 return a->key.u.ipv4.dst == b->key.u.ipv4.dst;
1379 return ipv6_addr_equal(&a->key.u.ipv6.dst, &b->key.u.ipv6.dst);
1474 info->key.u.ipv4.dst =
1477 if (ipv4_is_multicast(info->key.u.ipv4.dst)) {
1492 info->key.u.ipv6.dst =
1495 if (ipv6_addr_type(&info->key.u.ipv6.dst) &
1501 if (ipv6_addr_is_multicast(&info->key.u.ipv6.dst)) {
1642 struct flowi4 fl4 = { .daddr = info->key.u.ipv4.dst };
1645 if (!IS_ERR(rt) && rt->dst.dev) {
1646 ldev_mtu = rt->dst.dev->mtu - GENEVE_IPV4_HLEN;
1658 rt = rt6_lookup(geneve->net, &info->key.u.ipv6.dst, NULL, 0,
1661 if (rt && rt->dst.dev)
1662 ldev_mtu = rt->dst.dev->mtu - GENEVE_IPV6_HLEN;
1821 info->key.u.ipv4.dst))
1830 &info->key.u.ipv6.dst))