mirror of https://gitee.com/openkylin/linux.git
ipv6: Report TCP timetstamp info in cacheinfo just like ipv4 does.
I missed this while adding ipv6 support to inet_peer. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
95f56e7aa8
commit
346f870b8a
|
@ -2360,11 +2360,13 @@ static int rt6_fill_node(struct net *net,
|
|||
int iif, int type, u32 pid, u32 seq,
|
||||
int prefix, int nowait, unsigned int flags)
|
||||
{
|
||||
const struct inet_peer *peer;
|
||||
struct rtmsg *rtm;
|
||||
struct nlmsghdr *nlh;
|
||||
long expires;
|
||||
u32 table;
|
||||
struct neighbour *n;
|
||||
u32 ts, tsage;
|
||||
|
||||
if (prefix) { /* user wants prefix routes only */
|
||||
if (!(rt->rt6i_flags & RTF_PREFIX_RT)) {
|
||||
|
@ -2471,7 +2473,14 @@ static int rt6_fill_node(struct net *net,
|
|||
else
|
||||
expires = INT_MAX;
|
||||
|
||||
if (rtnl_put_cacheinfo(skb, &rt->dst, 0, 0, 0,
|
||||
peer = rt->rt6i_peer;
|
||||
ts = tsage = 0;
|
||||
if (peer && peer->tcp_ts_stamp) {
|
||||
ts = peer->tcp_ts;
|
||||
tsage = get_seconds() - peer->tcp_ts_stamp;
|
||||
}
|
||||
|
||||
if (rtnl_put_cacheinfo(skb, &rt->dst, 0, ts, tsage,
|
||||
expires, rt->dst.error) < 0)
|
||||
goto nla_put_failure;
|
||||
|
||||
|
|
Loading…
Reference in New Issue