VBVX 0.1.0
Header-only C++23 library for safe, zero-copy parsing of packet buffers.
Loading...
Searching...
No Matches
test_ip6_header.cxx File Reference
#include <gtest/gtest.h>
#include "header_view.hxx"
#include "utils.hxx"
#include "buffer_view.hxx"
#include "vbvx/ether.hxx"
#include "vbvx/ip_protocol.hxx"
#include "vbvx/ip6_header.hxx"
#include "vbvx/udp_header.hxx"
#include "vbvx/tcp_header.hxx"
#include <array>
#include <bit>
#include <cstring>
#include <type_traits>

Functions

 TEST (IPv6HeaderTest, DefaultsAreZero)
 TEST (IPv6HeaderTest, VersionTrafficClassAndFlowLabelParsing)
 TEST (IPv6HeaderTest, MaxTrafficClassAndFlowLabel)
 TEST (IPv6HeaderTest, PayloadLengthAndL4ProtocolParsing)
 TEST (IPv6HeaderTest, SrcAndDstBytesRoundTrip)
 TEST (IPv6HeaderTest, SizeAndAlignment)
 TEST (IPv6HeaderEdgeCases, NonStandardVersionIsReturned)
 TEST (IPv6HeaderEdgeCases, HopLimitAndZeroAddresses)
 TEST (IPv6HeaderEdgeCases, PayloadLengthBoundaries)
 TEST (IPv6HeaderEdgeCases, NextHeaderVariants)
 TEST (IPv6HeaderEdgeCases, ZeroCopyReflectsMutations)
 TEST (IPv6HeaderEdgeCases, NullHeaderViewIsFalse)
 TEST (BufferViewIPv6MalformedTest, Ipv6HeaderTooShort)
 TEST (BufferViewIPv6MalformedTest, Ipv6HeaderPresentAndL4Offset)
 TEST (BufferViewIPv6MalformedTest, TcpHeaderTooShortWhenProtoIsTcp)
 TEST (BufferViewIPv6MalformedTest, VlanIpv6Offset)
 TEST (BufferViewIPv6MalformedTest, IpProtocolNullOnNonIpFrames)
 TEST (BufferViewIPv6MalformedTest, TcpOptionsTruncated)
 TEST (BufferViewIPv6MalformedTest, TcpDataOffsetTooSmall)
 TEST (BufferViewIPv6MalformedTest, UdpLengthTooSmallAndTooLarge)

Function Documentation

◆ TEST() [1/20]

TEST ( BufferViewIPv6MalformedTest ,
IpProtocolNullOnNonIpFrames  )

◆ TEST() [2/20]

TEST ( BufferViewIPv6MalformedTest ,
Ipv6HeaderPresentAndL4Offset  )

◆ TEST() [3/20]

TEST ( BufferViewIPv6MalformedTest ,
Ipv6HeaderTooShort  )

◆ TEST() [4/20]

TEST ( BufferViewIPv6MalformedTest ,
TcpDataOffsetTooSmall  )

◆ TEST() [5/20]

TEST ( BufferViewIPv6MalformedTest ,
TcpHeaderTooShortWhenProtoIsTcp  )

◆ TEST() [6/20]

TEST ( BufferViewIPv6MalformedTest ,
TcpOptionsTruncated  )

◆ TEST() [7/20]

TEST ( BufferViewIPv6MalformedTest ,
UdpLengthTooSmallAndTooLarge  )

◆ TEST() [8/20]

TEST ( BufferViewIPv6MalformedTest ,
VlanIpv6Offset  )

◆ TEST() [9/20]

TEST ( IPv6HeaderEdgeCases ,
HopLimitAndZeroAddresses  )

◆ TEST() [10/20]

TEST ( IPv6HeaderEdgeCases ,
NextHeaderVariants  )

◆ TEST() [11/20]

TEST ( IPv6HeaderEdgeCases ,
NonStandardVersionIsReturned  )

◆ TEST() [12/20]

TEST ( IPv6HeaderEdgeCases ,
NullHeaderViewIsFalse  )

◆ TEST() [13/20]

TEST ( IPv6HeaderEdgeCases ,
PayloadLengthBoundaries  )

◆ TEST() [14/20]

TEST ( IPv6HeaderEdgeCases ,
ZeroCopyReflectsMutations  )

◆ TEST() [15/20]

TEST ( IPv6HeaderTest ,
DefaultsAreZero  )

◆ TEST() [16/20]

TEST ( IPv6HeaderTest ,
MaxTrafficClassAndFlowLabel  )

◆ TEST() [17/20]

TEST ( IPv6HeaderTest ,
PayloadLengthAndL4ProtocolParsing  )

◆ TEST() [18/20]

TEST ( IPv6HeaderTest ,
SizeAndAlignment  )

◆ TEST() [19/20]

TEST ( IPv6HeaderTest ,
SrcAndDstBytesRoundTrip  )

◆ TEST() [20/20]

TEST ( IPv6HeaderTest ,
VersionTrafficClassAndFlowLabelParsing  )