# NetDeviceInterFace ## **Overview** **Related Modules:** [WLAN](WLAN.md) **Description:** Defines interfaces that need to be implemented externally by network devices, including initializing, opening, and closing a network device. **Since:** 1.0 ## **Summary** ## Data Fields

Variable Name

Description

init )(struct NetDevice *netDev)

int32_t(* 

deInit )(struct NetDevice *netDev)

void(* 

open )(struct NetDevice *netDev)

int32_t(* 

stop )(struct NetDevice *netDev)

int32_t(* 

xmit )(struct NetDevice *netDev, struct NetBuf *netBuff)

NetDevTxResult(* 

ioctl )(struct NetDevice *netDev, IfReq *req, int32_t cmd)

int32_t(* 

setMacAddr )(struct NetDevice *netDev, void *addr)

int32_t(* 

getStats )(struct NetDevice *netDev)

struct NetDevStats *(* 

setNetIfStatus )(struct NetDevice *netDev, NetIfStatus status)

void(* 

selectQueue )(struct NetDevice *netDev, struct NetBuf *netBuff)

uint16_t(* 

netifNotify )(struct NetDevice *netDev, NetDevNotify *notify)

uint32_t(* 

changeMtu )(struct NetDevice *netDev, int32_t newMtu)

int32_t(* 

specialEtherTypeProcess )(const struct NetDevice *netDev, struct NetBuf *buff)

ProcessingResult(*