<!--
{
  "availability" : [
    "DriverKit: -"
  ],
  "documentType" : "symbol",
  "framework" : "NetworkingDriverKit",
  "identifier" : "/documentation/NetworkingDriverKit/IOUserNetworkEthernet/init",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "NetworkingDriverKit"
    ],
    "preciseIdentifier" : "c:@S@IOUserNetworkEthernet@F@init#"
  },
  "title" : "init"
}
-->

# init

Handles the basic initialization of the service.

```
virtual bool init();
```

## Return Value

`YES` if initialization was successful, or `NO` if an error occurred.

## Discussion

The system calls this method shortly after it instantiates your [`IOUserNetworkEthernet`](/documentation/NetworkingDriverKit/IOUserNetworkEthernet) subclass, and before it calls the <doc://com.apple.documentation/documentation/DriverKit/IOService/Start> method of your service. Limit the work you do in this method to simple tasks that must occur before your service stats. For example, you might use this method to allocate memory for your `ivars` structure.

Always call the `super` implementation of this method at some point.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)