This file contains some definitions and helper functions for when layer 3 is IPv4. More...
Classes | |
struct | Myra::L3_IPv4::Header |
Layer 3 IPv4 header. More... | |
Namespaces | |
Myra | |
Namespace declaration for all of the Myra Canyon helper functions. | |
Myra::L2 | |
Layer 2 (ethernet). | |
Myra::L3_IPv4 | |
Layer 3 is IPv4. | |
Typedefs | |
typedef L3_IP::Protocol | Myra::L3_IPv4::Protocol |
Pull into L3_IPv4 the IP protocol declaration to use in L3_IPv4::Header::protocol. More... | |
Functions | |
const Header * | Myra::L3_IPv4::get_header (const uint8_t *ptr) |
Get the L3_IPv4 header. More... | |
const Header * | Myra::L3_IPv4::get_header (const L2::Header *l2) |
Get the L3_IPv4 header. More... | |
Protocol | Myra::L3_IPv4::get_protocol (const Header *header) |
Get the protocol from the header to determine how to interpret layer 4. More... | |
int | Myra::L3_IPv4::get_version (const Header *header) |
Get the high 4 bits from Header::ver_and_ihl. More... | |
int | Myra::L3_IPv4::get_ihl (const Header *header) |
Get the low 4 bits from Header::ver_and_ihl. More... | |
uint16_t | Myra::L3_IPv4::get_header_length (const Header *header) |
32 bit words, but 8 bits per byte. More... | |
uint16_t | Myra::L3_IPv4::get_total_length (const Header *header) |
Get the total length of layer 3+. More... | |
uint16_t | Myra::L3_IPv4::get_payload_length (const Header *header) |
Number of bytes in layer 4+. More... | |
const uint8_t * | Myra::L3_IPv4::get_L4_pointer (const Header *header) |
Get a pointer to the start of layer 4. More... | |
bool | Myra::L3_IPv4::is_known_protocol (const Header *header) |
Determine if the protocol is a known value. More... | |
bool | Myra::L3_IPv4::is_unknown_protocol (const Header *header) |
Determine if the protocol is unknown. More... | |
std::string | Myra::L3_IPv4::to_string (const Protocol &proto) |
Return a simple text string that represents the IP protocol name. More... | |
bool | Myra::L2::ethertype_is_IPv4 (const L2::Ethertype type) |
Determine if a packet's layer 3 is IPv4. More... | |
bool | Myra::L2::ethertype_is_IPv4 (const L2::Header *l2) |
Determine if a packet's layer 3 is IPv4. More... | |
This file contains some definitions and helper functions for when layer 3 is IPv4.