diff options
author | David Ahern <dsahern@gmail.com> | 2019-04-06 01:30:29 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-04-09 00:22:40 +0200 |
commit | 0f5f7d7bf6e6bda4dffe7b42812a16ada6ea9816 (patch) | |
tree | 20c54a4846f8631c1d2af99085fbdce2c44283ae /include/net/route.h | |
parent | ipv4: Prepare fib_config for IPv6 gateway (diff) | |
download | linux-0f5f7d7bf6e6bda4dffe7b42812a16ada6ea9816.tar.xz linux-0f5f7d7bf6e6bda4dffe7b42812a16ada6ea9816.zip |
ipv4: Add support to rtable for ipv6 gateway
Add support for an IPv6 gateway to rtable. Since a gateway is either
IPv4 or IPv6, make it a union with rt_gw4 where rt_gw_family decides
which address is in use.
When dumping the route data, encode an ipv6 nexthop using RTA_VIA.
Signed-off-by: David Ahern <dsahern@gmail.com>
Reviewed-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/route.h')
-rw-r--r-- | include/net/route.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/net/route.h b/include/net/route.h index 96912b099c08..5d28a2509b58 100644 --- a/include/net/route.h +++ b/include/net/route.h @@ -60,7 +60,10 @@ struct rtable { int rt_iif; /* Info on neighbour */ - __be32 rt_gw4; + union { + __be32 rt_gw4; + struct in6_addr rt_gw6; + }; /* Miscellaneous cached information */ u32 rt_mtu_locked:1, |