Lines Matching refs:dst

200 	struct dst_entry *dst;  in icmpv6_xrlim_allow()  local
211 dst = ip6_route_output(net, sk, fl6); in icmpv6_xrlim_allow()
212 dev = dst_dev(dst); in icmpv6_xrlim_allow()
213 if (dst->error) { in icmpv6_xrlim_allow()
214 IP6_INC_STATS(net, ip6_dst_idev(dst), in icmpv6_xrlim_allow()
219 struct rt6_info *rt = dst_rt6_info(dst); in icmpv6_xrlim_allow()
233 __ICMP6_INC_STATS(net, ip6_dst_idev(dst), in icmpv6_xrlim_allow()
237 dst_release(dst); in icmpv6_xrlim_allow()
245 struct dst_entry *dst; in icmpv6_rt_has_prefsrc() local
248 dst = ip6_route_output(net, sk, fl6); in icmpv6_rt_has_prefsrc()
249 if (!dst->error) { in icmpv6_rt_has_prefsrc()
250 struct rt6_info *rt = dst_rt6_info(dst); in icmpv6_rt_has_prefsrc()
256 dst_release(dst); in icmpv6_rt_has_prefsrc()
361 struct dst_entry *dst, *dst2; in icmpv6_route_lookup() local
365 err = ip6_dst_lookup(net, sk, &dst, fl6); in icmpv6_route_lookup()
374 ipv6_anycast_destination(dst, &fl6->daddr)) { in icmpv6_route_lookup()
376 dst_release(dst); in icmpv6_route_lookup()
381 dst2 = dst; in icmpv6_route_lookup()
383 dst = xfrm_lookup(net, dst, flowi6_to_flowi(fl6), sk, 0); in icmpv6_route_lookup()
384 if (!IS_ERR(dst)) { in icmpv6_route_lookup()
385 if (dst != dst2) in icmpv6_route_lookup()
386 return dst; in icmpv6_route_lookup()
388 if (PTR_ERR(dst) == -EPERM) in icmpv6_route_lookup()
389 dst = NULL; in icmpv6_route_lookup()
391 return dst; in icmpv6_route_lookup()
404 dst_release(dst); in icmpv6_route_lookup()
405 dst = dst2; in icmpv6_route_lookup()
409 dst_release(dst); in icmpv6_route_lookup()
416 if (dst) in icmpv6_route_lookup()
417 return dst; in icmpv6_route_lookup()
462 struct dst_entry *dst; in icmp6_send() local
606 dst = icmpv6_route_lookup(net, skb, sk, &fl6); in icmp6_send()
607 if (IS_ERR(dst)) in icmp6_send()
610 ipc6.hlimit = ip6_sk_dst_hoplimit(np, &fl6, dst); in icmp6_send()
629 &ipc6, &fl6, dst_rt6_info(dst), in icmp6_send()
639 dst_release(dst); in icmp6_send()
691 if (rt && rt->dst.dev) in ip6_err_gen_icmpv6_unreach()
692 skb2->dev = rt->dst.dev; in ip6_err_gen_icmpv6_unreach()
736 struct dst_entry *dst; in icmpv6_echo_reply() local
790 if (ip6_dst_lookup(net, sk, &dst, &fl6)) in icmpv6_echo_reply()
792 dst = xfrm_lookup(net, dst, flowi6_to_flowi(&fl6), sk, 0); in icmpv6_echo_reply()
793 if (IS_ERR(dst)) in icmpv6_echo_reply()
809 ipc6.hlimit = ip6_sk_dst_hoplimit(np, &fl6, dst); in icmpv6_echo_reply()
820 dst_rt6_info(dst), MSG_DONTWAIT)) { in icmpv6_echo_reply()
829 dst_release(dst); in icmpv6_echo_reply()