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.