diff options
author | David Ahern <dsahern@gmail.com> | 2019-06-19 19:50:24 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-06-19 23:14:05 +0200 |
commit | c7036d97acd2527cef145b5ef9ad1a37ed21bbe6 (patch) | |
tree | a3ce2a1f0113e511cded41712b0060d1aa124072 | |
parent | net: hns3: Fix inconsistent indenting (diff) | |
download | linux-c7036d97acd2527cef145b5ef9ad1a37ed21bbe6.tar.xz linux-c7036d97acd2527cef145b5ef9ad1a37ed21bbe6.zip |
ipv6: Default fib6_type to RTN_UNICAST when not set
A user reported that routes are getting installed with type 0 (RTN_UNSPEC)
where before the routes were RTN_UNICAST. One example is from accel-ppp
which apparently still uses the ioctl interface and does not set
rtmsg_type. Another is the netlink interface where ipv6 does not require
rtm_type to be set (v4 does). Prior to the commit in the Fixes tag the
ipv6 stack converted type 0 to RTN_UNICAST, so restore that behavior.
Fixes: e8478e80e5a7 ("net/ipv6: Save route type in rt6_info")
Signed-off-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/ipv6/route.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/route.c b/net/ipv6/route.c index 0f60eb3a2873..11ad62effd56 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c @@ -3184,7 +3184,7 @@ static struct fib6_info *ip6_route_info_create(struct fib6_config *cfg, rt->fib6_table = table; rt->fib6_metric = cfg->fc_metric; - rt->fib6_type = cfg->fc_type; + rt->fib6_type = cfg->fc_type ? : RTN_UNICAST; rt->fib6_flags = cfg->fc_flags & ~RTF_GATEWAY; ipv6_addr_prefix(&rt->fib6_dst.addr, &cfg->fc_dst, cfg->fc_dst_len); |