summaryrefslogtreecommitdiffstats
path: root/net/irda
diff options
context:
space:
mode:
authorColin Ian King <colin.king@canonical.com>2017-08-17 23:14:58 +0100
committerDavid S. Miller <davem@davemloft.net>2017-08-18 16:21:51 -0700
commitb024d949a3c24255a7ef1a470420eb478949aa4c (patch)
tree9b66d1d97db2e83f862ce392422899e596b6f0a2 /net/irda
parentca3d89a3ebe79367bd41b6b8ba37664478ae2dba (diff)
downloadlinux-b024d949a3c24255a7ef1a470420eb478949aa4c.tar.bz2
irda: do not leak initialized list.dev to userspace
list.dev has not been initialized and so the copy_to_user is copying data from the stack back to user space which is a potential information leak. Fix this ensuring all of list is initialized to zero. Detected by CoverityScan, CID#1357894 ("Uninitialized scalar variable") Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/irda')
-rw-r--r--net/irda/af_irda.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/irda/af_irda.c b/net/irda/af_irda.c
index 2e6990f8b80b..23fa7c8b09a5 100644
--- a/net/irda/af_irda.c
+++ b/net/irda/af_irda.c
@@ -2213,7 +2213,7 @@ static int irda_getsockopt(struct socket *sock, int level, int optname,
{
struct sock *sk = sock->sk;
struct irda_sock *self = irda_sk(sk);
- struct irda_device_list list;
+ struct irda_device_list list = { 0 };
struct irda_device_info *discoveries;
struct irda_ias_set * ias_opt; /* IAS get/query params */
struct ias_object * ias_obj; /* Object in IAS */