]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
tcp: beware of alignments in tcp_get_info()
authorEric Dumazet <edumazet@google.com>
Wed, 27 Jan 2016 18:52:43 +0000 (10:52 -0800)
committerSasha Levin <sasha.levin@oracle.com>
Fri, 4 Mar 2016 15:25:47 +0000 (10:25 -0500)
commit1987c92ad0381beab46a65f79827d650de533584
tree8348657e058aea828599c84031adce2eb1c65ea3
parent4c62ddf7e39943b356157b4c2196a71825c8328c
tcp: beware of alignments in tcp_get_info()

[ Upstream commit ff5d749772018602c47509bdc0093ff72acd82ec ]

With some combinations of user provided flags in netlink command,
it is possible to call tcp_get_info() with a buffer that is not 8-bytes
aligned.

It does matter on some arches, so we need to use put_unaligned() to
store the u64 fields.

Current iproute2 package does not trigger this particular issue.

Fixes: 0df48c26d841 ("tcp: add tcpi_bytes_acked to tcp_info")
Fixes: 977cb0ecf82e ("tcp: add pacing_rate information into tcp_info")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
net/ipv4/tcp.c