Added code to check return value of sscanf.

Signed-off-by: John de la Garza <j...@jjdev.com>
---
 drivers/staging/usbip/vhci_sysfs.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/usbip/vhci_sysfs.c 
b/drivers/staging/usbip/vhci_sysfs.c
index 03e6edf..82dd49f 100644
--- a/drivers/staging/usbip/vhci_sysfs.c
+++ b/drivers/staging/usbip/vhci_sysfs.c
@@ -114,7 +114,8 @@ static ssize_t store_detach(struct device *dev, struct 
device_attribute *attr,
        int err;
        __u32 rhport = 0;
 
-       sscanf(buf, "%u", &rhport);
+       if (sscanf(buf, "%u", &rhport) != 1)
+               return -EINVAL;
 
        /* check rhport */
        if (rhport >= VHCI_NPORTS) {
@@ -182,7 +183,8 @@ static ssize_t store_attach(struct device *dev, struct 
device_attribute *attr,
         * @devid: unique device identifier in a remote host
         * @speed: usb device speed in a remote host
         */
-       sscanf(buf, "%u %u %u %u", &rhport, &sockfd, &devid, &speed);
+       if (sscanf(buf, "%u %u %u %u", &rhport, &sockfd, &devid, &speed) != 1)
+               return -EINVAL;
 
        usbip_dbg_vhci_sysfs("rhport(%u) sockfd(%u) devid(%u) speed(%u)\n",
                             rhport, sockfd, devid, speed);
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to