forked from luck/tmp_suning_uos_patched
usb: usbip tool: Check the return of get_nports()
If we get nonpositive number of ports, there is no sense to
continue, then fail gracefully.
In addition, the commit 0775a9cbc6
("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.opasiak@samsung.com>
Signed-off-by: Yuyang Du <yuyang.du@intel.com>
Acked-by: Shuah Khan <shuahkh@osg.samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
b3b51417d0
commit
c3509715fc
|
@ -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;
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user