]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - net/ipv6/route.c
[IPV6] NDISC: Search subtrees when backtracking on receipt of redirects.
[net-next-2.6.git] / net / ipv6 / route.c
index bd4cf175ff10cba000ab0be822cf450e9b8e3d38..fd626d420cd1d8640338ae1182581b0ff198c570 100644 (file)
@@ -1332,17 +1332,10 @@ restart:
                break;
        }
 
-       if (!rt) {
-               if (rt6_need_strict(&fl->fl6_dst)) {
-                       while ((fn = fn->parent) != NULL) {
-                               if (fn->fn_flags & RTN_ROOT)
-                                       break;
-                               if (fn->fn_flags & RTN_RTINFO)
-                                       goto restart;
-                       }
-               }
+       if (!rt)
                rt = &ip6_null_entry;
-       }
+       BACKTRACK(&fl->fl6_src);
+out:
        dst_hold(&rt->u.dst);
 
        read_unlock_bh(&table->tb6_lock);