ip6_output.c (e4340bbb07dd38339c0773543dd928886e512a57) ip6_output.c (1e0d69a9cc9172d7896c2113f983a74f6e8ff303)
1/*
2 * IPv6 output functions
3 * Linux INET6 implementation
4 *
5 * Authors:
6 * Pedro Roque <roque@di.fc.ul.pt>
7 *
8 * Based on linux/net/ipv4/ip_output.c

--- 863 unchanged lines hidden (view full) ---

872 * so that the last trick works only on connected
873 * sockets.
874 * 2. oif also should be the same.
875 */
876 if (ip6_rt_check(&rt->rt6i_dst, &fl6->daddr, np->daddr_cache) ||
877#ifdef CONFIG_IPV6_SUBTREES
878 ip6_rt_check(&rt->rt6i_src, &fl6->saddr, np->saddr_cache) ||
879#endif
1/*
2 * IPv6 output functions
3 * Linux INET6 implementation
4 *
5 * Authors:
6 * Pedro Roque <roque@di.fc.ul.pt>
7 *
8 * Based on linux/net/ipv4/ip_output.c

--- 863 unchanged lines hidden (view full) ---

872 * so that the last trick works only on connected
873 * sockets.
874 * 2. oif also should be the same.
875 */
876 if (ip6_rt_check(&rt->rt6i_dst, &fl6->daddr, np->daddr_cache) ||
877#ifdef CONFIG_IPV6_SUBTREES
878 ip6_rt_check(&rt->rt6i_src, &fl6->saddr, np->saddr_cache) ||
879#endif
880 (fl6->flowi6_oif && fl6->flowi6_oif != dst->dev->ifindex)) {
880 (!(fl6->flowi6_flags & FLOWI_FLAG_SKIP_NH_OIF) &&
881 (fl6->flowi6_oif && fl6->flowi6_oif != dst->dev->ifindex))) {
881 dst_release(dst);
882 dst = NULL;
883 }
884
885out:
886 return dst;
887}
888

--- 887 unchanged lines hidden ---
882 dst_release(dst);
883 dst = NULL;
884 }
885
886out:
887 return dst;
888}
889

--- 887 unchanged lines hidden ---