---
title: ReportAvailableMediaTypes
framework: networkingdriverkit
role: symbol
role_heading: Instance Method
path: networkingdriverkit/iousernetworkethernet/reportavailablemediatypes
---

# ReportAvailableMediaTypes

Tells the system what types of networking media your driver supports.

## Declaration

```occ
virtual kern_return_t ReportAvailableMediaTypes(const IOUserNetworkMediaType *mediaTypes, uint32_t count);
```

## Parameters

- `mediaTypes`: An array of doc://com.apple.networkingdriverkit/documentation/NetworkingDriverKit/IOUserNetworkMediaType types. For each type, combine a doc://com.apple.networkingdriverkit/documentation/NetworkingDriverKit/media-type-constants constant with one or more doc://com.apple.networkingdriverkit/documentation/NetworkingDriverKit/configuration-options constants to indicate the configurations you support.
- `count`: The number of items in the mediaTypes array.

## Return Value

Return Value kIOReturnSuccess on success, or another value if an error occurred.

## Discussion

Discussion Apple recommends that you include kIOUserNetworkMediaEthernetAuto as one of the media types you support. That media type lets the system configure the networking stack automatically on your behalf, based on the other media types you specify.

## See Also

### Declaring the Supported Media Types

- [SelectMediaType](networkingdriverkit/iousernetworkethernet/selectmediatype.md)
- [IOUserNetworkMediaType](networkingdriverkit/iousernetworkmediatype.md)
