---
title: "setHardwareAddress(const IOEthernetAddress *)"
framework: kernel
role: pseudoSymbol
path: kernel/ioethernetcontroller/1811383-sethardwareaddress
---

# setHardwareAddress(const IOEthernetAddress *)

Sets or changes the station address used by the Ethernet controller.

## Declaration

```occ
virtual IOReturn setHardwareAddress(
 const IOEthernetAddress *addrP); 
```

## Parameters

- `addrP`: Pointer to an IOEthernetAddress containing the new station address.

## Return Value

Return Value The default implementation will always return kIOReturnUnsupported. If overridden, drivers must return kIOReturnSuccess on success, or an error return code otherwise.

## Overview

Overview This method is called in response to a client command to change the station address used by the Ethernet controller. Implementation of this method is optional. This method is called from the workloop context.

## See Also

### Miscellaneous

- [createInterface](kernel/ioethernetcontroller/1811019-createinterface.md)
- [disablePacketFilter](kernel/ioethernetcontroller/1811029-disablepacketfilter.md)
- [enablePacketFilter](kernel/ioethernetcontroller/1811042-enablepacketfilter.md)
- [free](kernel/ioethernetcontroller/1811058-free.md)
- [getHardwareAddress(IOEthernetAddress *)](kernel/ioethernetcontroller/1811070-gethardwareaddress.md)
- [getHardwareAddress(void *, UInt32 *)](kernel/ioethernetcontroller/1811082-gethardwareaddress.md)
- [getMaxPacketSize](kernel/ioethernetcontroller/1811094-getmaxpacketsize.md)
- [getMinPacketSize](kernel/ioethernetcontroller/1811103-getminpacketsize.md)
- [getPacketFilters(const OSSymbol *, UInt32 *)](kernel/ioethernetcontroller/1811115-getpacketfilters.md)
- [getPacketFilters(UInt32 *)](kernel/ioethernetcontroller/1811127-getpacketfilters.md)
- [getVlanTagDemand](kernel/ioethernetcontroller/1811320-getvlantagdemand.md)
- [init](kernel/ioethernetcontroller/1811348-init.md)
- [initialize](kernel/ioethernetcontroller/1811361-initialize.md)
- [publishProperties](kernel/ioethernetcontroller/1811373-publishproperties.md)
- [setHardwareAddress(const void *, UInt32)](kernel/ioethernetcontroller/1811391-sethardwareaddress.md)
- [setMulticastList](kernel/ioethernetcontroller/1811399-setmulticastlist.md)
- [setMulticastMode](kernel/ioethernetcontroller/1811409-setmulticastmode.md)
- [setPromiscuousMode](kernel/ioethernetcontroller/1811419-setpromiscuousmode.md)
- [setVlanTag](kernel/ioethernetcontroller/1811426-setvlantag.md)
- [setWakeOnMagicPacket](kernel/ioethernetcontroller/1811434-setwakeonmagicpacket.md)
