Module Name: src
Committed By: riastradh
Date: Sun Apr 17 13:15:27 UTC 2022
Modified Files:
src/sys/dev/usb: if_umb.c
Log Message:
umb(4): Use usb_cdc_descriptor_t for bDescriptorSubtype.
Note: This needs more length validation! TBD in a separate commit.
To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/dev/usb/if_umb.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/usb/if_umb.c
diff -u src/sys/dev/usb/if_umb.c:1.21 src/sys/dev/usb/if_umb.c:1.22
--- src/sys/dev/usb/if_umb.c:1.21 Tue Sep 21 14:49:01 2021
+++ src/sys/dev/usb/if_umb.c Sun Apr 17 13:15:27 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: if_umb.c,v 1.21 2021/09/21 14:49:01 christos Exp $ */
+/* $NetBSD: if_umb.c,v 1.22 2022/04/17 13:15:27 riastradh Exp $ */
/* $OpenBSD: if_umb.c,v 1.20 2018/09/10 17:00:45 gerhard Exp $ */
/*
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_umb.c,v 1.21 2021/09/21 14:49:01 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_umb.c,v 1.22 2022/04/17 13:15:27 riastradh Exp $");
#ifdef _KERNEL_OPT
#include "opt_inet.h"
@@ -297,6 +297,7 @@ umb_attach(device_t parent, device_t sel
usbd_status status;
usbd_desc_iter_t iter;
const usb_descriptor_t *desc;
+ const usb_cdc_descriptor_t *csdesc;
int v;
const usb_cdc_union_descriptor_t *ud;
const struct mbim_descriptor *md;
@@ -350,7 +351,8 @@ umb_attach(device_t parent, device_t sel
continue;
if (desc->bDescriptorType != UDESC_CS_INTERFACE)
continue;
- switch (desc->bDescriptorSubtype) {
+ csdesc = (const usb_cdc_descriptor_t *)desc;
+ switch (csdesc->bDescriptorSubtype) {
case UDESCSUB_CDC_UNION:
ud = (const usb_cdc_union_descriptor_t *)desc;
data_ifaceno = ud->bSlaveInterface[0];