Patchwork farsync: fix info leak in ioctl

login
register
mail settings
Submitter Dan Carpenter
Date Oct. 11, 2013, 9:50 a.m.
Message ID <20131011095003.GD6247@mwanda>
Download mbox | patch
Permalink /patch/282557/
State Accepted
Delegated to: David Miller
Headers show

Comments

Dan Carpenter - Oct. 11, 2013, 9:50 a.m.
From: Salva Peiró <speiro@ai2.upv.es>

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>

---
 linux-3.4-xm/drivers/net/wan/farsync.c |    1 +
 1 file changed, 1 insertion(+)
David Miller - Oct. 11, 2013, 9:55 p.m.
From: Dan Carpenter <dan.carpenter@oracle.com>
Date: Fri, 11 Oct 2013 12:50:03 +0300

> From: Salva Peiró <speiro@ai2.upv.es>
> 
> 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>

Applied and queued up for -stable.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/linux-3.4-xm/drivers/net/wan/farsync.c b/linux-3.4-xm/drivers/net/wan/farsync.c
index 1a62318..3710427 100644
--- a/drivers/net/wan/farsync.c
+++ b/drivers/net/wan/farsync.c
@@ -1972,6 +1972,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) ==