Home About us GitHub Contact us Docs

FoxOS

Welcome to the FoxOS website!

ipv4_handler::ipv4_handler

Signature: ipv4_handler::ipv4_handler(ipv4_provider* backend, uint8_t protocol)
Attributes: undefined
Description: Constructor for the ipv4 handler class

Parameters:

ipv4_handler::~ipv4_handler

Signature: ipv4_handler::~ipv4_handler()
Attributes: undefined
Description: Destructor for the ipv4 handler class

ipv4_handler::send

Signature: void ipv4_handler::send(uint32_t dest_ip_be, uint8_t* payload, uint32_t size)
Description: Sends an IPv4 packet

Parameters:

Return: void

ipv4_handler::on_internet_protocol_received

Signature: bool ipv4_handler::on_internet_protocol_received(uint32_t srcIP_BE, uint32_t dstIP_BE, uint8_t* payload, uint32_t size)
Description: Handles an IPv4 packet

Parameters:

Return: bool

ipv4_provider::ipv4_provider

Signature: ipv4_provider::ipv4_provider(ether_frame_provider* backend, address_resolution_protocol* arp, uint32_t gateway_ip_be, uint32_t subnet_mask_be) : ether_frame_handler(backend, 0x0800), handlers(100)
Attributes: undefined
Description: Constructor for the ipv4 provider class

Parameters:

ipv4_provider::~ipv4_provider

Signature: ipv4_provider::~ipv4_provider()
Attributes: undefined
Description: Destructor for the ipv4 provider class

ipv4_provider::on_ether_frame_received

Signature: bool ipv4_provider::on_ether_frame_received(uint8_t* payload, uint32_t size)
Description: Handles an Ethernet frame

Parameters:

Return: bool

ipv4_provider::send

Signature: void ipv4_provider::send(uint32_t dest_ip_be, uint8_t protocol, uint8_t* payload, uint32_t size)
Description: Sends an IPv4 packet

Parameters:

Return: void

ipv4_provider::checksum

Signature: uint16_t ipv4_provider::checksum(uint16_t* data, uint32_t size)
Description: Calculates the checksum of an IPv4 packet

Parameters:

Return: uint16_t

Show file on GitHub