| From a91ccd26e75235d86248d018fe3779732bcafd8d Mon Sep 17 00:00:00 2001 |
| From: Johan Hovold <jhovold@gmail.com> |
| Date: Wed, 9 Oct 2013 17:01:09 +0200 |
| Subject: USB: mos7840: fix tiocmget error handling |
| |
| From: Johan Hovold <jhovold@gmail.com> |
| |
| commit a91ccd26e75235d86248d018fe3779732bcafd8d upstream. |
| |
| Make sure to return errors from tiocmget rather than rely on |
| uninitialised stack data. |
| |
| Signed-off-by: Johan Hovold <jhovold@gmail.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/usb/serial/mos7840.c | 4 ++++ |
| 1 file changed, 4 insertions(+) |
| |
| --- a/drivers/usb/serial/mos7840.c |
| +++ b/drivers/usb/serial/mos7840.c |
| @@ -1593,7 +1593,11 @@ static int mos7840_tiocmget(struct tty_s |
| return -ENODEV; |
| |
| status = mos7840_get_uart_reg(port, MODEM_STATUS_REGISTER, &msr); |
| + if (status != 1) |
| + return -EIO; |
| status = mos7840_get_uart_reg(port, MODEM_CONTROL_REGISTER, &mcr); |
| + if (status != 1) |
| + return -EIO; |
| result = ((mcr & MCR_DTR) ? TIOCM_DTR : 0) |
| | ((mcr & MCR_RTS) ? TIOCM_RTS : 0) |
| | ((mcr & MCR_LOOPBACK) ? TIOCM_LOOP : 0) |