_NetInterface Struct Reference

Network interface. More...

#include <net.h>

Data Fields

NetContext * netContext
 TCP/IP stack context. More...
 
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 NicDriver * nicDriver
 NIC driver. More...
 
const SpiDriver * spiDriver
 Underlying SPI driver. More...
 
const UartDriver * uartDriver
 Underlying UART driver. More...
 
const ExtIntDriver * extIntDriver
 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 PhyDriver * phyDriver
 Ethernet PHY driver. More...
 
uint8_t phyAddr
 PHY address. More...
 
bool_t phyEvent
 A PHY event is pending. More...
 
const SwitchDriver * switchDriver
 Ethernet switch driver. More...
 
const SmiDriver * smiDriver
 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...
 
NetInterface * parent
 Interface on top of which the virtual interface runs. More...
 
PppContext * pppContext
 PPP context. More...
 
Ipv4Context ipv4Context
 IPv4 context. More...
 
IpIfStats ipv4IfStats
 Per-interface IPv4 statistics. More...
 
bool_t enableArp
 Enable address resolution using ARP. More...
 
systime_t arpReachableTime
 ARP reachable time. More...
 
systime_t arpProbeTimeout
 ARP probe timeout. More...
 
ArpCacheEntry arpCache [ARP_CACHE_SIZE]
 ARP cache. More...
 
IgmpHostContext igmpHostContext
 IGMP host context. More...
 
IgmpRouterContext * igmpRouterContext
 IGMP router context. More...
 
IgmpSnoopingContext * igmpSnoopingContext
 IGMP snooping switch context. More...
 
AutoIpContext * autoIpContext
 Auto-IP context. More...
 
DhcpClientContext * dhcpClientContext
 DHCP client context. More...
 
DhcpServerContext * dhcpServerContext
 DHCP server context. More...
 
Ipv6Context ipv6Context
 IPv6 context. More...
 
IpIfStats ipv6IfStats
 Per-interface IPv6 statistics. More...
 
NdpContext ndpContext
 NDP context. More...
 
NdpRouterAdvContext * ndpRouterAdvContext
 RA service context. More...
 
MldNodeContext mldNodeContext
 MLD node context. More...
 
SlaacContext * slaacContext
 SLAAC context. More...
 
Dhcpv6ClientContext * dhcpv6ClientContext
 DHCPv6 client context. More...
 
MdnsResponderContext * mdnsResponderContext
 mDNS responder context More...
 
DnsSdResponderContext * dnsSdResponderContext
 DNS-SD responder context. More...
 
NetIfStats ifStats
 Network interface statistics. More...
 

Detailed Description

Network interface.

Definition at line 246 of file net.h.

Field Documentation

◆ acceptAllMulticast

bool_t acceptAllMulticast

Accept all frames with a multicast destination address.

Definition at line 276 of file net.h.

◆ adminLinkState

NicLinkState adminLinkState

Administrative link state.

Definition at line 261 of file net.h.

◆ arpCache

ARP cache.

Definition at line 308 of file net.h.

◆ arpProbeTimeout

systime_t arpProbeTimeout

ARP probe timeout.

Definition at line 307 of file net.h.

◆ arpReachableTime

systime_t arpReachableTime

ARP reachable time.

Definition at line 306 of file net.h.

◆ autoIpContext

AutoIpContext* autoIpContext

Auto-IP context.

Definition at line 320 of file net.h.

◆ configured

bool_t configured

Configuration done.

Definition at line 265 of file net.h.

◆ dhcpClientContext

DhcpClientContext* dhcpClientContext

DHCP client context.

Definition at line 323 of file net.h.

◆ dhcpServerContext

DhcpServerContext* dhcpServerContext

DHCP server context.

Definition at line 326 of file net.h.

◆ dhcpv6ClientContext

Dhcpv6ClientContext* dhcpv6ClientContext

DHCPv6 client context.

Definition at line 347 of file net.h.

◆ dnsSdResponderContext

DnsSdResponderContext* dnsSdResponderContext

DNS-SD responder context.

Definition at line 353 of file net.h.

◆ duplexMode

NicDuplexMode duplexMode

Duplex mode.

Definition at line 264 of file net.h.

◆ enableArp

bool_t enableArp

Enable address resolution using ARP.

Definition at line 305 of file net.h.

◆ eui64

Eui64 eui64

EUI-64 interface identifier.

Definition at line 251 of file net.h.

◆ extIntDriver

const ExtIntDriver* extIntDriver

External interrupt line driver.

Definition at line 257 of file net.h.

◆ hostname

Host name.

Definition at line 253 of file net.h.

◆ id

uint32_t id

A unique number identifying the interface.

Definition at line 250 of file net.h.

◆ ifStats

NetIfStats ifStats

Network interface statistics.

Definition at line 356 of file net.h.

◆ igmpHostContext

IgmpHostContext igmpHostContext

IGMP host context.

Definition at line 311 of file net.h.

◆ igmpRouterContext

IgmpRouterContext* igmpRouterContext

IGMP router context.

Definition at line 314 of file net.h.

◆ igmpSnoopingContext

IgmpSnoopingContext* igmpSnoopingContext

IGMP snooping switch context.

Definition at line 317 of file net.h.

◆ index

uint_t index

Zero-based index.

Definition at line 249 of file net.h.

◆ initialRto

systime_t initialRto

TCP initial retransmission timeout.

Definition at line 266 of file net.h.

◆ ipv4Context

Ipv4Context ipv4Context

IPv4 context.

Definition at line 299 of file net.h.

◆ ipv4IfStats

IpIfStats ipv4IfStats

Per-interface IPv4 statistics.

Definition at line 302 of file net.h.

◆ ipv6Context

Ipv6Context ipv6Context

IPv6 context.

Definition at line 329 of file net.h.

◆ ipv6IfStats

IpIfStats ipv6IfStats

Per-interface IPv6 statistics.

Definition at line 332 of file net.h.

◆ linkSpeed

uint32_t linkSpeed

Link speed.

Definition at line 263 of file net.h.

◆ linkState

bool_t linkState

Link state.

Definition at line 262 of file net.h.

◆ llcRxCallback

LlcRxCallback llcRxCallback

LLC frame received callback (802.2)

Definition at line 285 of file net.h.

◆ llcRxParam

void* llcRxParam

Callback parameter.

Definition at line 286 of file net.h.

◆ macAddr

MacAddr macAddr

Link-layer address.

Definition at line 273 of file net.h.

◆ macAddrFilter

MAC filter table.

Definition at line 274 of file net.h.

◆ mdnsResponderContext

MdnsResponderContext* mdnsResponderContext

mDNS responder context

Definition at line 350 of file net.h.

◆ mldNodeContext

MldNodeContext mldNodeContext

MLD node context.

Definition at line 341 of file net.h.

◆ name

A unique name identifying the interface.

Definition at line 252 of file net.h.

◆ ndpContext

NdpContext ndpContext

NDP context.

Definition at line 335 of file net.h.

◆ ndpRouterAdvContext

NdpRouterAdvContext* ndpRouterAdvContext

RA service context.

Definition at line 338 of file net.h.

◆ netContext

NetContext* netContext

TCP/IP stack context.

Definition at line 248 of file net.h.

◆ nicContext

uint8_t nicContext[NIC_CONTEXT_SIZE]

Driver specific context.

Definition at line 258 of file net.h.

◆ nicDriver

const NicDriver* nicDriver

NIC driver.

Definition at line 254 of file net.h.

◆ nicEvent

bool_t nicEvent

A NIC event is pending.

Definition at line 260 of file net.h.

◆ nicTxEvent

OsEvent nicTxEvent

Network controller TX event.

Definition at line 259 of file net.h.

◆ parent

NetInterface* parent

Interface on top of which the virtual interface runs.

Definition at line 293 of file net.h.

◆ phyAddr

uint8_t phyAddr

PHY address.

Definition at line 269 of file net.h.

◆ phyDriver

const PhyDriver* phyDriver

Ethernet PHY driver.

Definition at line 268 of file net.h.

◆ phyEvent

bool_t phyEvent

A PHY event is pending.

Definition at line 270 of file net.h.

◆ port

uint8_t port

Switch port identifier.

Definition at line 289 of file net.h.

◆ pppContext

PppContext* pppContext

PPP context.

Definition at line 296 of file net.h.

◆ promiscuous

bool_t promiscuous

Promiscuous mode.

Definition at line 275 of file net.h.

◆ slaacContext

SlaacContext* slaacContext

SLAAC context.

Definition at line 344 of file net.h.

◆ smiDriver

const SmiDriver* smiDriver

SMI driver.

Definition at line 272 of file net.h.

◆ spiDriver

const SpiDriver* spiDriver

Underlying SPI driver.

Definition at line 255 of file net.h.

◆ switchDriver

const SwitchDriver* switchDriver

Ethernet switch driver.

Definition at line 271 of file net.h.

◆ uartDriver

const UartDriver* uartDriver

Underlying UART driver.

Definition at line 256 of file net.h.

◆ vlanId

uint16_t vlanId

VLAN identifier (802.1Q)

Definition at line 279 of file net.h.

◆ vmanId

uint16_t vmanId

VMAN identifier (802.1ad)

Definition at line 282 of file net.h.


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