|
@@ -76,8 +76,7 @@ static int xfrm6_init_path(struct xfrm_dst *path, struct dst_entry *dst,
|
|
|
{
|
|
{
|
|
|
if (dst->ops->family == AF_INET6) {
|
|
if (dst->ops->family == AF_INET6) {
|
|
|
struct rt6_info *rt = (struct rt6_info *)dst;
|
|
struct rt6_info *rt = (struct rt6_info *)dst;
|
|
|
- if (rt->rt6i_node)
|
|
|
|
|
- path->path_cookie = rt->rt6i_node->fn_sernum;
|
|
|
|
|
|
|
+ path->path_cookie = rt6_get_cookie(rt);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
path->u.rt6.rt6i_nfheader_len = nfheader_len;
|
|
path->u.rt6.rt6i_nfheader_len = nfheader_len;
|
|
@@ -105,8 +104,7 @@ static int xfrm6_fill_dst(struct xfrm_dst *xdst, struct net_device *dev,
|
|
|
RTF_LOCAL);
|
|
RTF_LOCAL);
|
|
|
xdst->u.rt6.rt6i_metric = rt->rt6i_metric;
|
|
xdst->u.rt6.rt6i_metric = rt->rt6i_metric;
|
|
|
xdst->u.rt6.rt6i_node = rt->rt6i_node;
|
|
xdst->u.rt6.rt6i_node = rt->rt6i_node;
|
|
|
- if (rt->rt6i_node)
|
|
|
|
|
- xdst->route_cookie = rt->rt6i_node->fn_sernum;
|
|
|
|
|
|
|
+ xdst->route_cookie = rt6_get_cookie(rt);
|
|
|
xdst->u.rt6.rt6i_gateway = rt->rt6i_gateway;
|
|
xdst->u.rt6.rt6i_gateway = rt->rt6i_gateway;
|
|
|
xdst->u.rt6.rt6i_dst = rt->rt6i_dst;
|
|
xdst->u.rt6.rt6i_dst = rt->rt6i_dst;
|
|
|
xdst->u.rt6.rt6i_src = rt->rt6i_src;
|
|
xdst->u.rt6.rt6i_src = rt->rt6i_src;
|