]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/ipv6/ip6_tunnel.c
Merge with /pub/scm/linux/kernel/git/sfrench/cifs-2.6.git/
[linux-2.6-omap-h63xx.git] / net / ipv6 / ip6_tunnel.c
index f39ddeae1eefbf80fe92d63d91bfd7f83e11f6ac..cf94372d1af39980b108f3161fd8d94837e0f94c 100644 (file)
@@ -673,11 +673,12 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, struct net_device *dev)
 
        if ((dst = ip6_tnl_dst_check(t)) != NULL)
                dst_hold(dst);
-       else
+       else {
                dst = ip6_route_output(NULL, &fl);
 
-       if (dst->error || xfrm_lookup(&dst, &fl, NULL, 0) < 0)
-               goto tx_err_link_failure;
+               if (dst->error || xfrm_lookup(&dst, &fl, NULL, 0) < 0)
+                       goto tx_err_link_failure;
+       }
 
        tdev = dst->dev;
 
@@ -1123,7 +1124,7 @@ static inline int ip6ip6_register(void)
 
 static inline int ip6ip6_unregister(void)
 {
-       return xfrm6_tunnel_unregister(&ip6ip6_handler);
+       return xfrm6_tunnel_deregister(&ip6ip6_handler);
 }
 #else
 static struct inet6_protocol xfrm6_tunnel_protocol = {