From 3f0a82a6bbe35135ed04749b4022ca6563073d5d Mon Sep 17 00:00:00 2001 From: HiFiPHile Date: Tue, 25 Aug 2026 09:29:07 +0200 Subject: fix(audio): reject unsupported UAC2 interfaces Require the UAC1 AudioControl protocol before allocating an instance. The current parser assumes UAC1 descriptor layouts, so accepting UAC2 would misinterpret entities and consume a host slot. Signed-off-by: HiFiPHile --- src/class/audio/audio_host.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src') diff --git a/src/class/audio/audio_host.c b/src/class/audio/audio_host.c index 78ecd9525..2c18a22d8 100644 --- a/src/class/audio/audio_host.c +++ b/src/class/audio/audio_host.c @@ -778,6 +778,7 @@ uint16_t audioh_open(uint8_t rhport, uint8_t dev_addr, const tusb_desc_interface TU_VERIFY(TUSB_CLASS_AUDIO == desc_itf->bInterfaceClass, 0); TU_VERIFY(AUDIO_SUBCLASS_CONTROL == desc_itf->bInterfaceSubClass, 0); + TU_VERIFY(AUDIO_INT_PROTOCOL_CODE_V1 == desc_itf->bInterfaceProtocol, 0); const uint8_t *desc_start = (const uint8_t *)desc_itf; const uint8_t *p_desc = desc_start; -- cgit v1.3.1