RegisterEthernetInterface
Registers your driver with the networking stack.
Declaration
virtual kern_return_t RegisterEthernetInterface(IOUserNetworkMACAddress macAddress, IOUserNetworkPacketBufferPool *pool, IOUserNetworkPacketQueue **queues, uint32_t queueCount);Parameters
- macAddress:
The MAC address of the hardware your driver supports.
- pool:
The buffer pool you use to store incoming and outgoing packets.
- queues:
An array containing the four queues you use to process incoming and outgoing network packets. This array must contain one queue each of types Iousernetworkrxsubmissionqueue, Iousernetworkrxcompletionqueue, Iousernetworktxsubmissionqueue, and Iousernetworktxcompletionqueue. The order of the queues in the array doesn’t matter.
- queueCount:
The number of queues in the
queuesparameter. Thequeuesparameter must contain 4 items.
Discussion
Call this method toward the end of your Start method when your driver is ready to begin processing incoming and outgoing network packets.