_NetInterface Struct Reference

Structure describing a network interface. More...

#include <net.h>

Data Fields

uint_t index
 Zero-based index. More...
 
uint32_t id
 A unique number identifying the interface. More...
 
Eui64 eui64
 EUI-64 interface identifier. More...
 
char_t name [NET_MAX_IF_NAME_LEN+1]
 A unique name identifying the interface. More...
 
char_t hostname [NET_MAX_HOSTNAME_LEN+1]
 Host name. More...
 
const NicDrivernicDriver
 NIC driver. More...
 
const SpiDriverspiDriver
 Underlying SPI driver. More...
 
const UartDriveruartDriver
 Underlying UART driver. More...
 
const ExtIntDriverextIntDriver
 External interrupt line driver. More...
 
uint8_t nicContext [NIC_CONTEXT_SIZE]
 Driver specific context. More...
 
OsEvent nicTxEvent
 Network controller TX event. More...
 
bool_t nicEvent
 A NIC event is pending. More...
 
NicLinkState adminLinkState
 Administrative link state. More...
 
bool_t linkState
 Link state. More...
 
uint32_t linkSpeed
 Link speed. More...
 
NicDuplexMode duplexMode
 Duplex mode. More...
 
bool_t configured
 Configuration done. More...
 
systime_t initialRto
 TCP initial retransmission timeout. More...
 
const PhyDriverphyDriver
 Ethernet PHY driver. More...
 
uint8_t phyAddr
 PHY address. More...
 
bool_t phyEvent
 A PHY event is pending. More...
 
const SwitchDriverswitchDriver
 Ethernet switch driver. More...
 
const SmiDriversmiDriver
 SMI driver. More...
 
MacAddr macAddr
 Link-layer address. More...
 
MacFilterEntry macAddrFilter [MAC_ADDR_FILTER_SIZE]
 MAC filter table. More...
 
bool_t promiscuous
 Promiscuous mode. More...
 
bool_t acceptAllMulticast
 Accept all frames with a multicast destination address. More...
 
uint16_t vlanId
 VLAN identifier (802.1Q) More...
 
uint16_t vmanId
 VMAN identifier (802.1ad) More...
 
LlcRxCallback llcRxCallback
 LLC frame received callback (802.2) More...
 
void * llcRxParam
 Callback parameter. More...
 
uint8_t port
 Switch port identifier. More...
 
NetInterfaceparent
 Interface on top of which the virtual interface runs. More...
 
Ipv4Context ipv4Context
 IPv4 context. More...
 
bool_t enableArp
 Enable address resolution using ARP. More...
 
ArpCacheEntry arpCache [ARP_CACHE_SIZE]
 ARP cache. More...
 
IgmpHostContext igmpHostContext
 IGMP host context. More...
 
IgmpRouterContextigmpRouterContext
 IGMP router context. More...
 
IgmpSnoopingContextigmpSnoopingContext
 IGMP snooping switch context. More...
 
AutoIpContextautoIpContext
 Auto-IP context. More...
 
DhcpClientContextdhcpClientContext
 DHCP client context. More...
 
DhcpServerContextdhcpServerContext
 DHCP server context. More...
 
Ipv6Context ipv6Context
 IPv6 context. More...
 
NdpContext ndpContext
 NDP context. More...
 
NdpRouterAdvContextndpRouterAdvContext
 RA service context. More...
 
SlaacContextslaacContext
 SLAAC context. More...
 
Dhcpv6ClientContextdhcpv6ClientContext
 DHCPv6 client context. More...
 
MdnsResponderContextmdnsResponderContext
 mDNS responder context More...
 
DnsSdContextdnsSdContext
 
PppContextpppContext
 DNS-SD context. More...
 

Detailed Description

Structure describing a network interface.

Definition at line 194 of file net.h.

Field Documentation

◆ acceptAllMulticast

bool_t acceptAllMulticast

Accept all frames with a multicast destination address.

Definition at line 224 of file net.h.

◆ adminLinkState

NicLinkState adminLinkState

Administrative link state.

Definition at line 208 of file net.h.

◆ arpCache

ARP cache.

Definition at line 248 of file net.h.

◆ autoIpContext

AutoIpContext* autoIpContext

Auto-IP context.

Definition at line 260 of file net.h.

◆ configured

bool_t configured

Configuration done.

Definition at line 212 of file net.h.

◆ dhcpClientContext

DhcpClientContext* dhcpClientContext

DHCP client context.

Definition at line 263 of file net.h.

◆ dhcpServerContext

DhcpServerContext* dhcpServerContext

DHCP server context.

Definition at line 266 of file net.h.

◆ dhcpv6ClientContext

Dhcpv6ClientContext* dhcpv6ClientContext

DHCPv6 client context.

Definition at line 282 of file net.h.

◆ dnsSdContext

DnsSdContext* dnsSdContext

Definition at line 291 of file net.h.

◆ duplexMode

NicDuplexMode duplexMode

Duplex mode.

Definition at line 211 of file net.h.

◆ enableArp

bool_t enableArp

Enable address resolution using ARP.

Definition at line 247 of file net.h.

◆ eui64

Eui64 eui64

EUI-64 interface identifier.

Definition at line 198 of file net.h.

◆ extIntDriver

const ExtIntDriver* extIntDriver

External interrupt line driver.

Definition at line 204 of file net.h.

◆ hostname

Host name.

Definition at line 200 of file net.h.

◆ id

uint32_t id

A unique number identifying the interface.

Definition at line 197 of file net.h.

◆ igmpHostContext

IgmpHostContext igmpHostContext

IGMP host context.

Definition at line 251 of file net.h.

◆ igmpRouterContext

IgmpRouterContext* igmpRouterContext

IGMP router context.

Definition at line 254 of file net.h.

◆ igmpSnoopingContext

IgmpSnoopingContext* igmpSnoopingContext

IGMP snooping switch context.

Definition at line 257 of file net.h.

◆ index

uint_t index

Zero-based index.

Definition at line 196 of file net.h.

◆ initialRto

systime_t initialRto

TCP initial retransmission timeout.

Definition at line 213 of file net.h.

◆ ipv4Context

Ipv4Context ipv4Context

IPv4 context.

Definition at line 245 of file net.h.

◆ ipv6Context

Ipv6Context ipv6Context

IPv6 context.

Definition at line 271 of file net.h.

◆ linkSpeed

uint32_t linkSpeed

Link speed.

Definition at line 210 of file net.h.

◆ linkState

bool_t linkState

Link state.

Definition at line 209 of file net.h.

◆ llcRxCallback

LlcRxCallback llcRxCallback

LLC frame received callback (802.2)

Definition at line 233 of file net.h.

◆ llcRxParam

void* llcRxParam

Callback parameter.

Definition at line 234 of file net.h.

◆ macAddr

MacAddr macAddr

Link-layer address.

Definition at line 221 of file net.h.

◆ macAddrFilter

MAC filter table.

Definition at line 222 of file net.h.

◆ mdnsResponderContext

MdnsResponderContext* mdnsResponderContext

mDNS responder context

Definition at line 287 of file net.h.

◆ name

A unique name identifying the interface.

Definition at line 199 of file net.h.

◆ ndpContext

NdpContext ndpContext

NDP context.

Definition at line 273 of file net.h.

◆ ndpRouterAdvContext

NdpRouterAdvContext* ndpRouterAdvContext

RA service context.

Definition at line 276 of file net.h.

◆ nicContext

uint8_t nicContext[NIC_CONTEXT_SIZE]

Driver specific context.

Definition at line 205 of file net.h.

◆ nicDriver

const NicDriver* nicDriver

NIC driver.

Definition at line 201 of file net.h.

◆ nicEvent

bool_t nicEvent

A NIC event is pending.

Definition at line 207 of file net.h.

◆ nicTxEvent

OsEvent nicTxEvent

Network controller TX event.

Definition at line 206 of file net.h.

◆ parent

NetInterface* parent

Interface on top of which the virtual interface runs.

Definition at line 241 of file net.h.

◆ phyAddr

uint8_t phyAddr

PHY address.

Definition at line 217 of file net.h.

◆ phyDriver

const PhyDriver* phyDriver

Ethernet PHY driver.

Definition at line 216 of file net.h.

◆ phyEvent

bool_t phyEvent

A PHY event is pending.

Definition at line 218 of file net.h.

◆ port

uint8_t port

Switch port identifier.

Definition at line 237 of file net.h.

◆ pppContext

PppContext* pppContext

DNS-SD context.

PPP context

Definition at line 295 of file net.h.

◆ promiscuous

bool_t promiscuous

Promiscuous mode.

Definition at line 223 of file net.h.

◆ slaacContext

SlaacContext* slaacContext

SLAAC context.

Definition at line 279 of file net.h.

◆ smiDriver

const SmiDriver* smiDriver

SMI driver.

Definition at line 220 of file net.h.

◆ spiDriver

const SpiDriver* spiDriver

Underlying SPI driver.

Definition at line 202 of file net.h.

◆ switchDriver

const SwitchDriver* switchDriver

Ethernet switch driver.

Definition at line 219 of file net.h.

◆ uartDriver

const UartDriver* uartDriver

Underlying UART driver.

Definition at line 203 of file net.h.

◆ vlanId

uint16_t vlanId

VLAN identifier (802.1Q)

Definition at line 227 of file net.h.

◆ vmanId

uint16_t vmanId

VMAN identifier (802.1ad)

Definition at line 230 of file net.h.


The documentation for this struct was generated from the following file: