]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
atm: fix info leak in getsockopt(SO_ATMPVC)
authorMathias Krause <minipli@googlemail.com>
Wed, 15 Aug 2012 11:31:44 +0000 (11:31 +0000)
committerPaul Gortmaker <paul.gortmaker@windriver.com>
Mon, 10 Feb 2014 21:10:49 +0000 (16:10 -0500)
commit e862f1a9b7df4e8196ebec45ac62295138aa3fc2 upstream.

The ATM code fails to initialize the two padding bytes of struct
sockaddr_atmpvc inserted for alignment. Add an explicit memset(0)
before filling the structure to avoid the info leak.

Signed-off-by: Mathias Krause <minipli@googlemail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
net/atm/common.c

index 97ed94aa0cbceb3623b91e918fd886f353793aab..ec2cb8f3c8d9990a52c2a2a1d9008dbe5c2644d7 100644 (file)
@@ -759,6 +759,7 @@ int vcc_getsockopt(struct socket *sock, int level, int optname,
 
                if (!vcc->dev || !test_bit(ATM_VF_ADDR, &vcc->flags))
                        return -ENOTCONN;
+               memset(&pvc, 0, sizeof(pvc));
                pvc.sap_family = AF_ATMPVC;
                pvc.sap_addr.itf = vcc->dev->number;
                pvc.sap_addr.vpi = vcc->vpi;