On 05/22/2017 04:20 AM, Yuyang Du wrote:
> From: Yuyang Du <yuyang...@intel.com>
> 
> If we get nonpositive number of ports, there is no sense to
> continue, then fail gracefully.
> 
> In addition, the commit 0775a9cbc694e8c72 ("usbip: vhci extension:
> modifications to vhci driver") introduced configurable numbers of
> controllers and ports, but we have a static port number maximum,
> MAXNPORT. If exceeded, the idev array will be overflown. We fix
> it by validating the nports to make sure the port number max is
> not exceeded.
> 
> Reviewed-by: Krzysztof Opasiak <k.opas...@samsung.com>
> Signed-off-by: Yuyang Du <yuyang...@intel.com>
> Acked-by: Shuah Khan <shua...@osg.samsung.com>

Greg,

Could you please pick this up.

thanks,
-- Shuah

> ---
>  tools/usb/usbip/libsrc/vhci_driver.c | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/usb/usbip/libsrc/vhci_driver.c 
> b/tools/usb/usbip/libsrc/vhci_driver.c
> index f659c14..036b62b 100644
> --- a/tools/usb/usbip/libsrc/vhci_driver.c
> +++ b/tools/usb/usbip/libsrc/vhci_driver.c
> @@ -220,9 +220,16 @@ int usbip_vhci_driver_open(void)
>       }
>  
>       vhci_driver->nports = get_nports();
> -
>       dbg("available ports: %d", vhci_driver->nports);
>  
> +     if (vhci_driver->nports <= 0) {
> +             err("no available ports");
> +             goto err;
> +     } else if (vhci_driver->nports > MAXNPORT) {
> +             err("port number exceeds %d", MAXNPORT);
> +             goto err;
> +     }
> +
>       if (refresh_imported_device_list())
>               goto err;
>  
> 

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

Reply via email to