git: 114080d19973 - main - usb: fix loop in usb_config_parse

From: Ed Maste <emaste_at_FreeBSD.org>
Date: Mon, 11 Nov 2024 02:53:57 UTC
The branch main has been updated by emaste:

URL: https://cgit.FreeBSD.org/src/commit/?id=114080d19973331426cd826f3a961c6ea9216a53

commit 114080d19973331426cd826f3a961c6ea9216a53
Author:     Ed Maste <emaste@FreeBSD.org>
AuthorDate: 2024-10-04 15:49:53 +0000
Commit:     Ed Maste <emaste@FreeBSD.org>
CommitDate: 2024-11-11 02:53:18 +0000

    usb: fix loop in usb_config_parse
    
    By inspection, index increment was missing.
    
    PR:             281843
    Reported by:    Matt Jacobson
    Reviewed by:    bz, markj
    Fixes: e4611d26265f ("usb(4): Call optional endpoint_uninit() when changing configuration or alternate setting.")
    Sponsored by:   The FreeBSD Foundation
---
 sys/dev/usb/usb_device.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys/dev/usb/usb_device.c b/sys/dev/usb/usb_device.c
index 0f3c6a959ad2..e478fa66b6c9 100644
--- a/sys/dev/usb/usb_device.c
+++ b/sys/dev/usb/usb_device.c
@@ -855,6 +855,7 @@ usb_config_parse(struct usb_device *udev, uint8_t iface_index, uint8_t cmd)
 					if (ep->refcount_alloc != 0)
 						return (USB_ERR_IN_USE);
 				}
+				ep++;
 			}
 		}