BACKPORT: net: cdc_ether: fix divide by 0 on bad descriptors

Setting dev->hard_mtu to 0 will cause a divide error in
usbnet_probe. Protect against devices with bogus CDC Ethernet
functional descriptors by ignoring a zero wMaxSegmentSize.

BUG=chromium:789494
TEST=Build and run

Change-Id: I0664ec88dff4d2a3ee1b134ce27000c35b4d617c
Signed-off-by: Bjrn Mork <bjorn@mork.no>
Acked-by: Oliver Neukum <oneukum@suse.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Guenter Roeck <groeck@chromium.org>
(cherry picked from upstream commit 2cb80187ba06)
(cherry picked from commit 0839b4b24f92fd42e4de351dd36636713b8e750a
 chromeos-4.4; fixed conflicts)
Signed-off-by: Guenter Roeck <groeck@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/797230
(cherry picked from commit c599af055a4958689c14e214488e5465e7c2a5e3)
Reviewed-on: https://chromium-review.googlesource.com/801097
1 file changed