_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...
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...
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...
 Interface on top of which the virtual interface runs. More...
Ipv4Context ipv4Context
 IPv4 context. More...
ArpCacheEntry arpCache [ARP_CACHE_SIZE]
 ARP cache. More...
systime_t igmpv1RouterPresentTimer
 IGMPv1 router present timer. More...
bool_t igmpv1RouterPresent
 An IGMPv1 query has been recently heard. More...
 Auto-IP context. More...
 DHCP client context. More...
 DHCP server context. More...
Ipv6Context ipv6Context
 IPv6 context. More...
NdpContext ndpContext
 NDP context. More...
 RA service context. More...
 SLAAC context. More...
 DHCPv6 client context. More...
 mDNS responder context More...
 DNS-SD context. More...

Detailed Description

Structure describing a network interface.

Definition at line 198 of file net.h.

Field Documentation

◆ adminLinkState

NicLinkState adminLinkState

Administrative link state.

Definition at line 212 of file net.h.

◆ arpCache

ARP cache.

Definition at line 248 of file net.h.

◆ autoIpContext

AutoIpContext* autoIpContext

Auto-IP context.

Definition at line 255 of file net.h.

◆ configured

bool_t configured

Configuration done.

Definition at line 216 of file net.h.

◆ dhcpClientContext

DhcpClientContext* dhcpClientContext

DHCP client context.

Definition at line 258 of file net.h.

◆ dhcpServerContext

DhcpServerContext* dhcpServerContext

DHCP server context.

Definition at line 261 of file net.h.

◆ dhcpv6ClientContext

Dhcpv6ClientContext* dhcpv6ClientContext

DHCPv6 client context.

Definition at line 277 of file net.h.

◆ dnsSdContext

DnsSdContext* dnsSdContext

Definition at line 286 of file net.h.

◆ duplexMode

NicDuplexMode duplexMode

Duplex mode.

Definition at line 215 of file net.h.

◆ eui64

Eui64 eui64

EUI-64 interface identifier.

Definition at line 202 of file net.h.

◆ extIntDriver

const ExtIntDriver* extIntDriver

External interrupt line driver.

Definition at line 208 of file net.h.

◆ hostname

Host name.

Definition at line 204 of file net.h.

◆ id

uint32_t id

A unique number identifying the interface.

Definition at line 201 of file net.h.

◆ igmpv1RouterPresent

bool_t igmpv1RouterPresent

An IGMPv1 query has been recently heard.

Definition at line 252 of file net.h.

◆ igmpv1RouterPresentTimer

systime_t igmpv1RouterPresentTimer

IGMPv1 router present timer.

Definition at line 251 of file net.h.

◆ index

uint_t index

Zero-based index.

Definition at line 200 of file net.h.

◆ ipv4Context

Ipv4Context ipv4Context

IPv4 context.

Definition at line 246 of file net.h.

◆ ipv6Context

Ipv6Context ipv6Context

IPv6 context.

Definition at line 266 of file net.h.

◆ linkSpeed

uint32_t linkSpeed

Link speed.

Definition at line 214 of file net.h.

◆ linkState

bool_t linkState

Link state.

Definition at line 213 of file net.h.

◆ llcRxCallback

LlcRxCallback llcRxCallback

LLC frame received callback (802.2)

Definition at line 234 of file net.h.

◆ llcRxParam

void* llcRxParam

Callback parameter.

Definition at line 235 of file net.h.

◆ macAddr

MacAddr macAddr

Link-layer address.

Definition at line 224 of file net.h.

◆ macAddrFilter

MAC filter table.

Definition at line 225 of file net.h.

◆ mdnsResponderContext

MdnsResponderContext* mdnsResponderContext

mDNS responder context

Definition at line 282 of file net.h.

◆ name

A unique name identifying the interface.

Definition at line 203 of file net.h.

◆ ndpContext

NdpContext ndpContext

NDP context.

Definition at line 268 of file net.h.

◆ ndpRouterAdvContext

NdpRouterAdvContext* ndpRouterAdvContext

RA service context.

Definition at line 271 of file net.h.

◆ nicContext

uint8_t nicContext[NIC_CONTEXT_SIZE]

Driver specific context.

Definition at line 209 of file net.h.

◆ nicDriver

const NicDriver* nicDriver

NIC driver.

Definition at line 205 of file net.h.

◆ nicEvent

bool_t nicEvent

A NIC event is pending.

Definition at line 211 of file net.h.

◆ nicTxEvent

OsEvent nicTxEvent

Network controller TX event.

Definition at line 210 of file net.h.

◆ parent

NetInterface* parent

Interface on top of which the virtual interface runs.

Definition at line 242 of file net.h.

◆ phyAddr

uint8_t phyAddr

PHY address.

Definition at line 220 of file net.h.

◆ phyDriver

const PhyDriver* phyDriver

Ethernet PHY driver.

Definition at line 219 of file net.h.

◆ phyEvent

bool_t phyEvent

A PHY event is pending.

Definition at line 221 of file net.h.

◆ port

uint8_t port

Switch port identifier.

Definition at line 238 of file net.h.

◆ pppContext

PppContext* pppContext

DNS-SD context.

PPP context

Definition at line 290 of file net.h.

◆ slaacContext

SlaacContext* slaacContext

SLAAC context.

Definition at line 274 of file net.h.

◆ smiDriver

const SmiDriver* smiDriver

SMI driver.

Definition at line 223 of file net.h.

◆ spiDriver

const SpiDriver* spiDriver

Underlying SPI driver.

Definition at line 206 of file net.h.

◆ switchDriver

const SwitchDriver* switchDriver

Ethernet switch driver.

Definition at line 222 of file net.h.

◆ uartDriver

const UartDriver* uartDriver

Underlying UART driver.

Definition at line 207 of file net.h.

◆ vlanId

uint16_t vlanId

VLAN identifier (802.1Q)

Definition at line 228 of file net.h.

◆ vmanId

uint16_t vmanId

VMAN identifier (802.1ad)

Definition at line 231 of file net.h.

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