VBVX 0.1.0
Header-only C++23 library for safe, zero-copy parsing of packet buffers.
Loading...
Searching...
No Matches
vbvx::ICMPv6Header Struct Reference

ICMPv6 header (type, code, checksum) (4 bytes). More...

#include <icmp6.hxx>

Public Member Functions

constexpr auto type_u8 () const noexcept -> uint8_t
constexpr auto code_u8 () const noexcept -> uint8_t
constexpr auto checksum () const noexcept -> uint16_t
constexpr auto type_known () const noexcept -> std::optional< ICMPv6Type >
constexpr void set_checksum (uint16_t v) noexcept

Public Attributes

uint8_t type
uint8_t code
uint16_t checksum_be

Detailed Description

ICMPv6 header (type, code, checksum) (4 bytes).

See also
IANA ICMPv6 Parameters: https://www.iana.org/assignments/icmp-parameters/icmp-parameters.xhtml IETF
RFC 4443: https://datatracker.ietf.org/doc/html/rfc4443

Member Function Documentation

◆ checksum()

auto vbvx::ICMPv6Header::checksum ( ) const -> uint16_t
inlineconstexprnoexcept

◆ code_u8()

auto vbvx::ICMPv6Header::code_u8 ( ) const -> uint8_t
inlineconstexprnoexcept

◆ set_checksum()

void vbvx::ICMPv6Header::set_checksum ( uint16_t v)
inlineconstexprnoexcept

◆ type_known()

auto vbvx::ICMPv6Header::type_known ( ) const -> std::optional< ICMPv6Type >
inlineconstexprnoexcept

◆ type_u8()

auto vbvx::ICMPv6Header::type_u8 ( ) const -> uint8_t
inlineconstexprnoexcept

Member Data Documentation

◆ checksum_be

uint16_t vbvx::ICMPv6Header::checksum_be

◆ code

uint8_t vbvx::ICMPv6Header::code

◆ type

uint8_t vbvx::ICMPv6Header::type

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