diff options
author | Kangjie Lu <kangjielu@gmail.com> | 2016-07-14 15:02:06 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-09-15 08:27:49 +0200 |
commit | 5fb71611925f734f7fe03a45527e14b296fd5167 (patch) | |
tree | 57022ab16a1835a50ab9186dfce5fbe690035246 /net/tipc | |
parent | cfd6e7fe434a378127e4964fc0b7ccf32ae2baed (diff) | |
download | linux-stable-5fb71611925f734f7fe03a45527e14b296fd5167.tar.gz linux-stable-5fb71611925f734f7fe03a45527e14b296fd5167.tar.bz2 linux-stable-5fb71611925f734f7fe03a45527e14b296fd5167.zip |
tipc: fix an infoleak in tipc_nl_compat_link_dump
[ Upstream commit 5d2be1422e02ccd697ccfcd45c85b4a26e6178e2 ]
link_info.str is a char array of size 60. Memory after the NULL
byte is not initialized. Sending the whole object out can cause
a leak.
Signed-off-by: Kangjie Lu <kjlu@gatech.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/tipc')
-rw-r--r-- | net/tipc/netlink_compat.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/tipc/netlink_compat.c b/net/tipc/netlink_compat.c index 2ed732bfe94b..f4f27c7c54fb 100644 --- a/net/tipc/netlink_compat.c +++ b/net/tipc/netlink_compat.c @@ -574,7 +574,8 @@ static int tipc_nl_compat_link_dump(struct tipc_nl_compat_msg *msg, link_info.dest = nla_get_flag(link[TIPC_NLA_LINK_DEST]); link_info.up = htonl(nla_get_flag(link[TIPC_NLA_LINK_UP])); - strcpy(link_info.str, nla_data(link[TIPC_NLA_LINK_NAME])); + nla_strlcpy(link_info.str, nla_data(link[TIPC_NLA_LINK_NAME]), + TIPC_MAX_LINK_NAME); return tipc_add_tlv(msg->rep, TIPC_TLV_LINK_INFO, &link_info, sizeof(link_info)); |