xfrm6: ensure to use the same dev when building a bundle
authorNicolas Dichtel <nicolas.dichtel@6wind.com>
Wed, 21 Apr 2010 23:25:30 +0000 (16:25 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 21 Apr 2010 23:25:30 +0000 (16:25 -0700)
When building a bundle, we set dst.dev and rt6.rt6i_idev.
We must ensure to set the same device for both fields.

Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/xfrm6_policy.c

index ae181651c75a82d32fdb6596068e3bb5c7839740..00bf7c962b7e84134734d74bac80482da87bdcd6 100644 (file)
@@ -124,7 +124,7 @@ static int xfrm6_fill_dst(struct xfrm_dst *xdst, struct net_device *dev,
        xdst->u.dst.dev = dev;
        dev_hold(dev);
 
-       xdst->u.rt6.rt6i_idev = in6_dev_get(rt->u.dst.dev);
+       xdst->u.rt6.rt6i_idev = in6_dev_get(dev);
        if (!xdst->u.rt6.rt6i_idev)
                return -ENODEV;