---
title: IOUSBGetUSB20ExtensionDeviceCapabilityDescriptor
framework: usbdriverkit
role: symbol
role_heading: Function
path: usbdriverkit/iousbgetusb20extensiondevicecapabilitydescriptor
---

# IOUSBGetUSB20ExtensionDeviceCapabilityDescriptor

Finds the first USB 2.0 extension capability descriptor in a BOS descriptor.

## Declaration

```occ
const IOUSBDeviceCapabilityUSB2Extension *IOUSBGetUSB20ExtensionDeviceCapabilityDescriptor(const IOUSBBOSDescriptor *bosDescriptor);
```

## Parameters

- `bosDescriptor`: The BOS descriptor that contains the descriptors to iterate through.

## Return Value

Return Value The descriptor pointer, or NULL if no matching descriptor can be found.

## Discussion

Discussion This method uses getNextCapabilityDescriptorWithType to fetch the first USB20ExtensionCapabilityDescriptor.

## See Also

### BOS Descriptors

- [IOUSBGetNextCapabilityDescriptor](usbdriverkit/iousbgetnextcapabilitydescriptor.md)
- [IOUSBGetNextCapabilityDescriptorWithType](usbdriverkit/iousbgetnextcapabilitydescriptorwithtype.md)
- [IOUSBGetSuperSpeedDeviceCapabilityDescriptor](usbdriverkit/iousbgetsuperspeeddevicecapabilitydescriptor.md)
- [IOUSBGetSuperSpeedPlusDeviceCapabilityDescriptor](usbdriverkit/iousbgetsuperspeedplusdevicecapabilitydescriptor.md)
- [IOUSBGetContainerIDDescriptor](usbdriverkit/iousbgetcontaineriddescriptor.md)
- [IOUSBGetPlatformCapabilityDescriptor](usbdriverkit/iousbgetplatformcapabilitydescriptor.md)
- [IOUSBGetBillboardDescriptor](usbdriverkit/iousbgetbillboarddescriptor.md)
