On 05/22/2017 04:20 AM, Yuyang Du wrote:
> From: Yuyang Du <[email protected]>
>
> 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 <[email protected]>
> Signed-off-by: Yuyang Du <[email protected]>
> Acked-by: Shuah Khan <[email protected]>
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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html