Lines Matching refs:dst

34 	struct dst_entry *dst;  in xfrm6_dst_lookup()  local
42 dst = ip6_route_output(net, NULL, &fl6); in xfrm6_dst_lookup()
44 err = dst->error; in xfrm6_dst_lookup()
45 if (dst->error) { in xfrm6_dst_lookup()
46 dst_release(dst); in xfrm6_dst_lookup()
47 dst = ERR_PTR(err); in xfrm6_dst_lookup()
50 return dst; in xfrm6_dst_lookup()
56 struct dst_entry *dst; in xfrm6_get_saddr() local
59 dst = xfrm6_dst_lookup(net, 0, NULL, daddr); in xfrm6_get_saddr()
60 if (IS_ERR(dst)) in xfrm6_get_saddr()
63 dev = ip6_dst_idev(dst)->dev; in xfrm6_get_saddr()
65 dst_release(dst); in xfrm6_get_saddr()
81 static int xfrm6_init_path(struct xfrm_dst *path, struct dst_entry *dst, in xfrm6_init_path() argument
84 if (dst->ops->family == AF_INET6) { in xfrm6_init_path()
85 struct rt6_info *rt = (struct rt6_info *)dst; in xfrm6_init_path()
100 xdst->u.dst.dev = dev; in xfrm6_fill_dst()
233 static void xfrm6_update_pmtu(struct dst_entry *dst, struct sock *sk, in xfrm6_update_pmtu() argument
236 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; in xfrm6_update_pmtu()
242 static void xfrm6_redirect(struct dst_entry *dst, struct sock *sk, in xfrm6_redirect() argument
245 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; in xfrm6_redirect()
251 static void xfrm6_dst_destroy(struct dst_entry *dst) in xfrm6_dst_destroy() argument
253 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; in xfrm6_dst_destroy()
257 dst_destroy_metrics_generic(dst); in xfrm6_dst_destroy()
265 static void xfrm6_dst_ifdown(struct dst_entry *dst, struct net_device *dev, in xfrm6_dst_ifdown() argument
273 xdst = (struct xfrm_dst *)dst; in xfrm6_dst_ifdown()
283 xdst = (struct xfrm_dst *)xdst->u.dst.child; in xfrm6_dst_ifdown()
284 } while (xdst->u.dst.xfrm); in xfrm6_dst_ifdown()
289 xfrm_dst_ifdown(dst, dev); in xfrm6_dst_ifdown()