]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: Set rtm_table to RT_TABLE_COMPAT for ipv6 for tables > 255
authorKalash Nainwal <kalash@arista.com>
Thu, 21 Feb 2019 00:23:04 +0000 (16:23 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 23 Mar 2019 07:18:58 +0000 (08:18 +0100)
[ Upstream commit 97f0082a0592212fc15d4680f5a4d80f79a1687c ]

Set rtm_table to RT_TABLE_COMPAT for ipv6 for tables > 255 to
keep legacy software happy. This is similar to what was done for
ipv4 in commit 709772e6e065 ("net: Fix routing tables with
id > 255 for legacy software").

Signed-off-by: Kalash Nainwal <kalash@arista.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/ipv6/route.c

index 82bf2c4ebdb287bf6f6b25c4057aea81aa1dd12a..c9ea3b0de43b64bf64eb0737469617f5f046cd39 100644 (file)
@@ -2558,7 +2558,7 @@ static int rt6_fill_node(struct net *net,
                table = rt->rt6i_table->tb6_id;
        else
                table = RT6_TABLE_UNSPEC;
-       rtm->rtm_table = table;
+       rtm->rtm_table = table < 256 ? table : RT_TABLE_COMPAT;
        if (nla_put_u32(skb, RTA_TABLE, table))
                goto nla_put_failure;
        if (rt->rt6i_flags & RTF_REJECT) {