|
|
@@ -2480,6 +2480,12 @@ static struct rt6_info *__ip6_route_redirect(struct net *net,
|
|
|
struct fib6_info *rt;
|
|
|
struct fib6_node *fn;
|
|
|
|
|
|
+ /* l3mdev_update_flow overrides oif if the device is enslaved; in
|
|
|
+ * this case we must match on the real ingress device, so reset it
|
|
|
+ */
|
|
|
+ if (fl6->flowi6_flags & FLOWI_FLAG_SKIP_NH_OIF)
|
|
|
+ fl6->flowi6_oif = skb->dev->ifindex;
|
|
|
+
|
|
|
/* Get the "current" route for this destination and
|
|
|
* check if the redirect has come from appropriate router.
|
|
|
*
|