Re: [patch] tipc: info leak in __tipc_nl_add_udp_addr()

2016-10-13 Thread David Miller
From: Dan Carpenter 
Date: Thu, 13 Oct 2016 11:06:06 +0300

> We should clear out the padding and unused struct members so that we
> don't expose stack information to userspace.
> 
> Fixes: fdb3accc2c15 ('tipc: add the ability to get UDP options via netlink')
> Signed-off-by: Dan Carpenter 

Applied, thanks.


[patch] tipc: info leak in __tipc_nl_add_udp_addr()

2016-10-13 Thread Dan Carpenter
We should clear out the padding and unused struct members so that we
don't expose stack information to userspace.

Fixes: fdb3accc2c15 ('tipc: add the ability to get UDP options via netlink')
Signed-off-by: Dan Carpenter 
---
This goes into the net tree.

diff --git a/net/tipc/udp_media.c b/net/tipc/udp_media.c
index d80cd3f..78cab9c 100644
--- a/net/tipc/udp_media.c
+++ b/net/tipc/udp_media.c
@@ -407,6 +407,7 @@ static int __tipc_nl_add_udp_addr(struct sk_buff *skb,
if (ntohs(addr->proto) == ETH_P_IP) {
struct sockaddr_in ip4;
 
+   memset(, 0, sizeof(ip4));
ip4.sin_family = AF_INET;
ip4.sin_port = addr->port;
ip4.sin_addr.s_addr = addr->ipv4.s_addr;
@@ -417,6 +418,7 @@ static int __tipc_nl_add_udp_addr(struct sk_buff *skb,
} else if (ntohs(addr->proto) == ETH_P_IPV6) {
struct sockaddr_in6 ip6;
 
+   memset(, 0, sizeof(ip6));
ip6.sin6_family = AF_INET6;
ip6.sin6_port  = addr->port;
memcpy(_addr, >ipv6, sizeof(struct in6_addr));