iPXE
|
A network-layer protocol. More...
#include <netdevice.h>
Data Fields | |
const char * | name |
Protocol name. More... | |
int(* | rx )(struct io_buffer *iobuf, struct net_device *netdev, const void *ll_dest, const void *ll_source, unsigned int flags) |
Process received packet. More... | |
const char *(* | ntoa )(const void *net_addr) |
Transcribe network-layer address. More... | |
uint16_t | net_proto |
Network-layer protocol. More... | |
uint8_t | net_addr_len |
Network-layer address length. More... | |
A network-layer protocol.
Definition at line 64 of file netdevice.h.
const char* net_protocol::name |
Protocol name.
Definition at line 66 of file netdevice.h.
Referenced by arp_rx(), arp_tx_request(), efi_pxe_udp_read(), neighbour_create(), neighbour_destroy(), neighbour_discover(), neighbour_discovered(), neighbour_expired(), neighbour_tx(), nstat(), pxenv_undi_isr(), and pxenv_undi_transmit().
int( * net_protocol::rx) (struct io_buffer *iobuf, struct net_device *netdev, const void *ll_dest, const void *ll_source, unsigned int flags) |
Process received packet.
iobuf | I/O buffer |
netdev | Network device |
ll_dest | Link-layer destination address |
ll_source | Link-layer source address |
flags | Packet flags |
rc | Return status code |
This method takes ownership of the I/O buffer.
Definition at line 79 of file netdevice.h.
Referenced by net_rx().
const char*( * net_protocol::ntoa) (const void *net_addr) |
Transcribe network-layer address.
net_addr | Network-layer address |
string | Human-readable transcription of address |
This method should convert the network-layer address into a human-readable format (e.g. dotted quad notation for IPv4).
The buffer used to hold the transcription is statically allocated.
Definition at line 94 of file netdevice.h.
Referenced by arp_rx(), arp_tx_request(), efi_pxe_ip_ntoa(), efi_pxe_start(), efi_pxe_udp_read(), neighbour_create(), neighbour_destroy(), neighbour_discover(), neighbour_discovered(), neighbour_expired(), neighbour_tx(), and nstat().
uint16_t net_protocol::net_proto |
Network-layer protocol.
This is an ETH_P_XXX constant, in network-byte order
Definition at line 99 of file netdevice.h.
Referenced by arp_find_protocol(), arp_tx_request(), net_rx(), net_tx(), pxenv_undi_isr(), and pxenv_undi_transmit().
uint8_t net_protocol::net_addr_len |
Network-layer address length.
Definition at line 101 of file netdevice.h.
Referenced by arp_rx(), arp_tx_request(), efi_pxe_ip_filter(), efi_pxe_ip_sockaddr(), efi_pxe_udp_deliver(), efi_pxe_udp_read(), neighbour_create(), neighbour_discover(), and neighbour_find().