]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
farsync: fix info leak in ioctl
authorSalva Peiró <speiro@ai2.upv.es>
Fri, 11 Oct 2013 09:50:03 +0000 (12:50 +0300)
committerWilly Tarreau <w@1wt.eu>
Mon, 19 May 2014 05:53:34 +0000 (07:53 +0200)
[ Upstream commit 96b340406724d87e4621284ebac5e059d67b2194 ]

The fst_get_iface() code fails to initialize the two padding bytes of
struct sync_serial_settings after the ->loopback member. Add an explicit
memset(0) before filling the structure to avoid the info leak.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Willy Tarreau <w@1wt.eu>
drivers/net/wan/farsync.c

index beda387f2fc79536c3907bd37bca533dd12b7d23..433bf990be79954206c2dccd867b4e9078a6770d 100644 (file)
@@ -1971,6 +1971,7 @@ fst_get_iface(struct fst_card_info *card, struct fst_port_info *port,
        }
 
        i = port->index;
+       memset(&sync, 0, sizeof(sync));
        sync.clock_rate = FST_RDL(card, portConfig[i].lineSpeed);
        /* Lucky card and linux use same encoding here */
        sync.clock_type = FST_RDB(card, portConfig[i].internalClock) ==