rename struct packet_layer to struct raw_layer

This commit is contained in:
luwenpeng
2024-06-14 10:48:11 +08:00
parent 020c8303c6
commit 1f78881cbb
20 changed files with 251 additions and 251 deletions

View File

@@ -55,7 +55,7 @@ static inline void set_tuple2(const char *data, enum layer_proto type, struct tu
static inline void set_tuple4(const char *data, enum layer_proto type, struct tuple4 *tuple);
static inline void set_tuple6(const char *data, enum layer_proto type, struct tuple6 *tuple, uint64_t domain);
static inline struct packet_layer *get_free_layer(struct packet *pkt);
static inline struct raw_layer *get_free_layer(struct packet *pkt);
static inline uint16_t get_gtp_hdr_len(const char *data, uint16_t len);
@@ -255,7 +255,7 @@ static inline void set_tuple6(const char *data, enum layer_proto type, struct tu
}
}
static inline struct packet_layer *get_free_layer(struct packet *pkt)
static inline struct raw_layer *get_free_layer(struct packet *pkt)
{
if (pkt->layers_used >= pkt->layers_size)
{
@@ -360,7 +360,7 @@ static inline const char *parse_ether(struct packet *pkt, const char *data, uint
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -388,7 +388,7 @@ static inline const char *parse_pweth(struct packet *pkt, const char *data, uint
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -481,7 +481,7 @@ static inline const char *parse_ppp(struct packet *pkt, const char *data, uint16
hdr_len = 4;
success:
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -508,7 +508,7 @@ static inline const char *parse_l2tpv2_over_udp(struct packet *pkt, const char *
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -536,7 +536,7 @@ static inline const char *parse_l2tpv3_over_udp(struct packet *pkt, const char *
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -565,7 +565,7 @@ static inline const char *parse_l2tpv3_over_ip(struct packet *pkt, const char *d
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -593,7 +593,7 @@ static inline const char *parse_vlan(struct packet *pkt, const char *data, uint1
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -612,7 +612,7 @@ static inline const char *parse_pppoe_ses(struct packet *pkt, const char *data,
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -630,7 +630,7 @@ static inline const char *parse_mpls(struct packet *pkt, const char *data, uint1
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -679,7 +679,7 @@ static inline const char *parse_ipv4(struct packet *pkt, const char *data, uint1
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -745,7 +745,7 @@ static inline const char *parse_ipv6(struct packet *pkt, const char *data, uint1
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -850,7 +850,7 @@ static inline const char *parse_auth(struct packet *pkt, const char *data, uint1
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -869,7 +869,7 @@ static inline const char *parse_gre(struct packet *pkt, const char *data, uint16
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -888,7 +888,7 @@ static inline const char *parse_udp(struct packet *pkt, const char *data, uint16
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -965,7 +965,7 @@ static inline const char *parse_tcp(struct packet *pkt, const char *data, uint16
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -989,7 +989,7 @@ static inline const char *parse_icmp(struct packet *pkt, const char *data, uint1
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -1007,7 +1007,7 @@ static inline const char *parse_icmp6(struct packet *pkt, const char *data, uint
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -1025,7 +1025,7 @@ static inline const char *parse_vxlan(struct packet *pkt, const char *data, uint
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -1044,7 +1044,7 @@ static inline const char *parse_gtpv1_u(struct packet *pkt, const char *data, ui
return data;
}
struct packet_layer *layer = get_free_layer(pkt);
struct raw_layer *layer = get_free_layer(pkt);
if (unlikely(layer == NULL))
{
return data;
@@ -1147,7 +1147,7 @@ void packet_print_str(const struct packet *pkt)
for (uint8_t i = 0; i < pkt->layers_used; i++)
{
int used = 0;
const struct packet_layer *layer = &pkt->layers[i];
const struct raw_layer *layer = &pkt->layers[i];
printf(" layer[%u]: %p, type: %s, hdr_offset: %u, hdr_ptr: %p, hdr_len: %u, pld_ptr: %p, pld_len: %u\n",
i, layer, layer_proto_to_str(layer->type), layer->hdr_offset,
layer->hdr_ptr, layer->hdr_len, layer->pld_ptr, layer->pld_len);
@@ -1213,7 +1213,7 @@ void packet_print_str(const struct packet *pkt)
int packet_get_innermost_tuple2(const struct packet *pkt, struct tuple2 *tuple)
{
memset(tuple, 0, sizeof(struct tuple2));
const struct packet_layer *layer = NULL;
const struct raw_layer *layer = NULL;
for (int8_t i = pkt->layers_used - 1; i >= 0; i--)
{
@@ -1234,7 +1234,7 @@ int packet_get_innermost_tuple2(const struct packet *pkt, struct tuple2 *tuple)
int packet_get_outermost_tuple2(const struct packet *pkt, struct tuple2 *tuple)
{
memset(tuple, 0, sizeof(struct tuple2));
const struct packet_layer *layer = NULL;
const struct raw_layer *layer = NULL;
for (int8_t i = 0; i < pkt->layers_used; i++)
{
@@ -1255,9 +1255,9 @@ int packet_get_outermost_tuple2(const struct packet *pkt, struct tuple2 *tuple)
int packet_get_innermost_tuple4(const struct packet *pkt, struct tuple4 *tuple)
{
memset(tuple, 0, sizeof(struct tuple4));
const struct packet_layer *layer_l3 = NULL;
const struct packet_layer *layer_l4 = NULL;
const struct packet_layer *layer = NULL;
const struct raw_layer *layer_l3 = NULL;
const struct raw_layer *layer_l4 = NULL;
const struct raw_layer *layer = NULL;
for (int8_t i = pkt->layers_used - 1; i >= 0; i--)
{
@@ -1295,9 +1295,9 @@ int packet_get_innermost_tuple4(const struct packet *pkt, struct tuple4 *tuple)
int packet_get_outermost_tuple4(const struct packet *pkt, struct tuple4 *tuple)
{
memset(tuple, 0, sizeof(struct tuple4));
const struct packet_layer *layer_l3 = NULL;
const struct packet_layer *layer_l4 = NULL;
const struct packet_layer *layer = NULL;
const struct raw_layer *layer_l3 = NULL;
const struct raw_layer *layer_l4 = NULL;
const struct raw_layer *layer = NULL;
for (int8_t i = 0; i < pkt->layers_used; i++)
{
@@ -1335,9 +1335,9 @@ int packet_get_outermost_tuple4(const struct packet *pkt, struct tuple4 *tuple)
int packet_get_innermost_tuple6(const struct packet *pkt, struct tuple6 *tuple)
{
memset(tuple, 0, sizeof(struct tuple6));
const struct packet_layer *layer_l3 = NULL;
const struct packet_layer *layer_l4 = NULL;
const struct packet_layer *layer = NULL;
const struct raw_layer *layer_l3 = NULL;
const struct raw_layer *layer_l4 = NULL;
const struct raw_layer *layer = NULL;
uint64_t domain = packet_get_domain(pkt);
for (int8_t i = pkt->layers_used - 1; i >= 0; i--)
@@ -1376,9 +1376,9 @@ int packet_get_innermost_tuple6(const struct packet *pkt, struct tuple6 *tuple)
int packet_get_outermost_tuple6(const struct packet *pkt, struct tuple6 *tuple)
{
memset(tuple, 0, sizeof(struct tuple6));
const struct packet_layer *layer_l3 = NULL;
const struct packet_layer *layer_l4 = NULL;
const struct packet_layer *layer = NULL;
const struct raw_layer *layer_l3 = NULL;
const struct raw_layer *layer_l4 = NULL;
const struct raw_layer *layer = NULL;
uint64_t domain = packet_get_domain(pkt);
for (int8_t i = 0; i < pkt->layers_used; i++)
@@ -1412,9 +1412,9 @@ int packet_get_outermost_tuple6(const struct packet *pkt, struct tuple6 *tuple)
}
}
const struct packet_layer *packet_get_innermost_layer(const struct packet *pkt, enum layer_proto type)
const struct raw_layer *packet_get_innermost_raw_layer(const struct packet *pkt, enum layer_proto type)
{
const struct packet_layer *layer = NULL;
const struct raw_layer *layer = NULL;
for (int8_t i = pkt->layers_used - 1; i >= 0; i--)
{
@@ -1428,9 +1428,9 @@ const struct packet_layer *packet_get_innermost_layer(const struct packet *pkt,
return NULL;
}
const struct packet_layer *packet_get_outermost_layer(const struct packet *pkt, enum layer_proto type)
const struct raw_layer *packet_get_outermost_raw_layer(const struct packet *pkt, enum layer_proto type)
{
const struct packet_layer *layer = NULL;
const struct raw_layer *layer = NULL;
for (int8_t i = 0; i < pkt->layers_used; i++)
{

View File

@@ -38,8 +38,8 @@ enum packet_origin
struct packet
{
struct packet_layer layers[PACKET_MAX_LAYERS];
struct packet_layer *frag_layer; // fragment layer
struct raw_layer layers[PACKET_MAX_LAYERS];
struct raw_layer *frag_layer; // fragment layer
int8_t layers_used;
int8_t layers_size;
@@ -75,8 +75,8 @@ int packet_get_outermost_tuple4(const struct packet *pkt, struct tuple4 *tuple);
int packet_get_innermost_tuple6(const struct packet *pkt, struct tuple6 *tuple);
int packet_get_outermost_tuple6(const struct packet *pkt, struct tuple6 *tuple);
const struct packet_layer *packet_get_innermost_layer(const struct packet *pkt, enum layer_proto type);
const struct packet_layer *packet_get_outermost_layer(const struct packet *pkt, enum layer_proto type);
const struct raw_layer *packet_get_innermost_raw_layer(const struct packet *pkt, enum layer_proto type);
const struct raw_layer *packet_get_outermost_raw_layer(const struct packet *pkt, enum layer_proto type);
/******************************************************************************
* Utils

View File

@@ -23,12 +23,12 @@ enum packet_origin packet_get_origin(const struct packet *pkt)
return pkt->origin;
}
int8_t packet_get_layer_count(const struct packet *pkt)
int packet_get_layer_count(const struct packet *pkt)
{
return pkt->layers_used;
}
const struct packet_layer *packet_get_layer(const struct packet *pkt, int8_t idx)
const struct raw_layer *packet_get_raw_layer(const struct packet *pkt, int idx)
{
if (idx < 0 || idx >= pkt->layers_used)
{

View File

@@ -89,8 +89,8 @@ TEST(PACKET, ETH_VLAN_VLAN_IP4_IP4_UDP)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -100,8 +100,8 @@ TEST(PACKET, ETH_VLAN_VLAN_IP4_IP4_UDP)
EXPECT_TRUE(outer_eth_record->pld_len == 156);
// LAYER_PROTO_VLAN
const struct packet_layer *outer_vlan_record = packet_get_outermost_layer(&handler, LAYER_PROTO_VLAN);
const struct packet_layer *inner_vlan_record = packet_get_innermost_layer(&handler, LAYER_PROTO_VLAN);
const struct raw_layer *outer_vlan_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_VLAN);
const struct raw_layer *inner_vlan_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_VLAN);
EXPECT_TRUE(outer_vlan_record != nullptr);
EXPECT_TRUE(inner_vlan_record != nullptr);
@@ -113,8 +113,8 @@ TEST(PACKET, ETH_VLAN_VLAN_IP4_IP4_UDP)
EXPECT_TRUE(inner_vlan_record->pld_len == 148);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record != nullptr);
@@ -126,8 +126,8 @@ TEST(PACKET, ETH_VLAN_VLAN_IP4_IP4_UDP)
EXPECT_TRUE(inner_ipv4_record->pld_len == 108);
// LAYER_PROTO_UDP
const struct packet_layer *outer_udp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_UDP);
const struct packet_layer *inner_udp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *outer_udp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *inner_udp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_UDP);
EXPECT_TRUE(outer_udp_record != nullptr);
EXPECT_TRUE(inner_udp_record != nullptr);
@@ -292,8 +292,8 @@ TEST(PACKET, ETH_IP6_IP4_TCP_SSH)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -303,8 +303,8 @@ TEST(PACKET, ETH_IP6_IP4_TCP_SSH)
EXPECT_TRUE(outer_eth_record->pld_len == 712);
// LAYER_PROTO_IPV6
const struct packet_layer *outer_ipv6_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV6);
const struct packet_layer *inner_ipv6_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *outer_ipv6_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *inner_ipv6_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV6);
EXPECT_TRUE(outer_ipv6_record != nullptr);
EXPECT_TRUE(inner_ipv6_record != nullptr);
@@ -314,8 +314,8 @@ TEST(PACKET, ETH_IP6_IP4_TCP_SSH)
EXPECT_TRUE(outer_ipv6_record->pld_len == 672);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record != nullptr);
@@ -325,8 +325,8 @@ TEST(PACKET, ETH_IP6_IP4_TCP_SSH)
EXPECT_TRUE(outer_ipv4_record->pld_len == 652);
// LAYER_PROTO_TCP
const struct packet_layer *outer_tcp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_TCP);
const struct packet_layer *inner_tcp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *outer_tcp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *inner_tcp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_TCP);
EXPECT_TRUE(outer_tcp_record != nullptr);
EXPECT_TRUE(inner_tcp_record != nullptr);
@@ -484,8 +484,8 @@ TEST(PACKET, ETH_VLAN_IP6_IP4_GRE_PPP_IP4_UDP_DNS)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -495,8 +495,8 @@ TEST(PACKET, ETH_VLAN_IP6_IP4_GRE_PPP_IP4_UDP_DNS)
EXPECT_TRUE(outer_eth_record->pld_len == 258);
// LAYER_PROTO_VLAN
const struct packet_layer *outer_vlan_record = packet_get_outermost_layer(&handler, LAYER_PROTO_VLAN);
const struct packet_layer *inner_vlan_record = packet_get_innermost_layer(&handler, LAYER_PROTO_VLAN);
const struct raw_layer *outer_vlan_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_VLAN);
const struct raw_layer *inner_vlan_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_VLAN);
EXPECT_TRUE(outer_vlan_record != nullptr);
EXPECT_TRUE(inner_vlan_record != nullptr);
@@ -506,8 +506,8 @@ TEST(PACKET, ETH_VLAN_IP6_IP4_GRE_PPP_IP4_UDP_DNS)
EXPECT_TRUE(outer_vlan_record->pld_len == 254);
// LAYER_PROTO_IPV6
const struct packet_layer *outer_ipv6_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV6);
const struct packet_layer *inner_ipv6_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *outer_ipv6_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *inner_ipv6_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV6);
EXPECT_TRUE(outer_ipv6_record != nullptr);
EXPECT_TRUE(inner_ipv6_record != nullptr);
@@ -517,7 +517,7 @@ TEST(PACKET, ETH_VLAN_IP6_IP4_GRE_PPP_IP4_UDP_DNS)
EXPECT_TRUE(outer_ipv6_record->pld_len == 214);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(outer_ipv4_record->hdr_offset == 58);
@@ -525,8 +525,8 @@ TEST(PACKET, ETH_VLAN_IP6_IP4_GRE_PPP_IP4_UDP_DNS)
EXPECT_TRUE(outer_ipv4_record->pld_len == 194);
// LAYER_PROTO_GRE
const struct packet_layer *outer_gre_record = packet_get_outermost_layer(&handler, LAYER_PROTO_GRE);
const struct packet_layer *inner_ger_record = packet_get_innermost_layer(&handler, LAYER_PROTO_GRE);
const struct raw_layer *outer_gre_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_GRE);
const struct raw_layer *inner_ger_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_GRE);
EXPECT_TRUE(outer_gre_record != nullptr);
EXPECT_TRUE(inner_ger_record != nullptr);
@@ -536,8 +536,8 @@ TEST(PACKET, ETH_VLAN_IP6_IP4_GRE_PPP_IP4_UDP_DNS)
EXPECT_TRUE(outer_gre_record->pld_len == 178);
// LAYER_PROTO_PPP
const struct packet_layer *outer_ppp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_PPP);
const struct packet_layer *inner_ppp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_PPP);
const struct raw_layer *outer_ppp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_PPP);
const struct raw_layer *inner_ppp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_PPP);
EXPECT_TRUE(outer_ppp_record != nullptr);
EXPECT_TRUE(inner_ppp_record != nullptr);
@@ -547,7 +547,7 @@ TEST(PACKET, ETH_VLAN_IP6_IP4_GRE_PPP_IP4_UDP_DNS)
EXPECT_TRUE(outer_ppp_record->pld_len == 174);
// LAYER_PROTO_IPV4
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(inner_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record->hdr_offset == 98);
@@ -555,8 +555,8 @@ TEST(PACKET, ETH_VLAN_IP6_IP4_GRE_PPP_IP4_UDP_DNS)
EXPECT_TRUE(inner_ipv4_record->pld_len == 154);
// LAYER_PROTO_UDP
const struct packet_layer *outer_udp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_UDP);
const struct packet_layer *inner_udp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *outer_udp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *inner_udp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_UDP);
EXPECT_TRUE(outer_udp_record != nullptr);
EXPECT_TRUE(inner_udp_record != nullptr);
@@ -690,8 +690,8 @@ TEST(PACKET, ETH_IP4_IP6_TCP)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -701,8 +701,8 @@ TEST(PACKET, ETH_IP4_IP6_TCP)
EXPECT_TRUE(outer_eth_record->pld_len == 92);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record != nullptr);
@@ -712,8 +712,8 @@ TEST(PACKET, ETH_IP4_IP6_TCP)
EXPECT_TRUE(outer_ipv4_record->pld_len == 72);
// LAYER_PROTO_IPV6
const struct packet_layer *outer_ipv6_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV6);
const struct packet_layer *inner_ipv6_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *outer_ipv6_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *inner_ipv6_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV6);
EXPECT_TRUE(outer_ipv6_record != nullptr);
EXPECT_TRUE(inner_ipv6_record != nullptr);
@@ -723,8 +723,8 @@ TEST(PACKET, ETH_IP4_IP6_TCP)
EXPECT_TRUE(outer_ipv6_record->pld_len == 32);
// LAYER_PROTO_TCP
const struct packet_layer *outer_tcp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_TCP);
const struct packet_layer *inner_tcp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *outer_tcp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *inner_tcp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_TCP);
EXPECT_TRUE(outer_tcp_record != nullptr);
EXPECT_TRUE(inner_tcp_record != nullptr);
@@ -844,8 +844,8 @@ TEST(PACKET, ETH_IP6_IP6_UDP)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -855,7 +855,7 @@ TEST(PACKET, ETH_IP6_IP6_UDP)
EXPECT_TRUE(outer_eth_record->pld_len == 92);
// LAYER_PROTO_IPV6
const struct packet_layer *outer_ipv6_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *outer_ipv6_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV6);
EXPECT_TRUE(outer_ipv6_record != nullptr);
EXPECT_TRUE(outer_ipv6_record->hdr_offset == 14);
@@ -863,7 +863,7 @@ TEST(PACKET, ETH_IP6_IP6_UDP)
EXPECT_TRUE(outer_ipv6_record->pld_len == 52);
// LAYER_PROTO_IPV6
const struct packet_layer *inner_ipv6_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *inner_ipv6_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV6);
EXPECT_TRUE(inner_ipv6_record != nullptr);
EXPECT_TRUE(inner_ipv6_record->hdr_offset == 54);
@@ -871,8 +871,8 @@ TEST(PACKET, ETH_IP6_IP6_UDP)
EXPECT_TRUE(inner_ipv6_record->pld_len == 12);
// LAYER_PROTO_UDP
const struct packet_layer *outer_udp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_UDP);
const struct packet_layer *inner_udp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *outer_udp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *inner_udp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_UDP);
EXPECT_TRUE(outer_udp_record != nullptr);
EXPECT_TRUE(inner_udp_record != nullptr);
@@ -999,8 +999,8 @@ TEST(PACKET, ETH_MPLS_IP4_TCP)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -1010,8 +1010,8 @@ TEST(PACKET, ETH_MPLS_IP4_TCP)
EXPECT_TRUE(outer_eth_record->pld_len == 56);
// LAYER_PROTO_MPLS
const struct packet_layer *outer_mpls_record = packet_get_outermost_layer(&handler, LAYER_PROTO_MPLS);
const struct packet_layer *inner_mpls_record = packet_get_innermost_layer(&handler, LAYER_PROTO_MPLS);
const struct raw_layer *outer_mpls_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_MPLS);
const struct raw_layer *inner_mpls_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_MPLS);
EXPECT_TRUE(outer_mpls_record != nullptr);
EXPECT_TRUE(inner_mpls_record != nullptr);
@@ -1021,8 +1021,8 @@ TEST(PACKET, ETH_MPLS_IP4_TCP)
EXPECT_TRUE(outer_mpls_record->pld_len == 52);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record != nullptr);
@@ -1032,8 +1032,8 @@ TEST(PACKET, ETH_MPLS_IP4_TCP)
EXPECT_TRUE(outer_ipv4_record->pld_len == 32);
// LAYER_PROTO_TCP
const struct packet_layer *outer_tcp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_TCP);
const struct packet_layer *inner_tcp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *outer_tcp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *inner_tcp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_TCP);
EXPECT_TRUE(outer_tcp_record != nullptr);
EXPECT_TRUE(inner_tcp_record != nullptr);
@@ -1165,8 +1165,8 @@ TEST(PACKET, ETH_MPLS_MPLS_IP4_TCP)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -1176,7 +1176,7 @@ TEST(PACKET, ETH_MPLS_MPLS_IP4_TCP)
EXPECT_TRUE(outer_eth_record->pld_len == 52);
// LAYER_PROTO_MPLS
const struct packet_layer *outer_mpls_record = packet_get_outermost_layer(&handler, LAYER_PROTO_MPLS);
const struct raw_layer *outer_mpls_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_MPLS);
EXPECT_TRUE(outer_mpls_record != nullptr);
EXPECT_TRUE(outer_mpls_record->hdr_offset == 14);
@@ -1184,7 +1184,7 @@ TEST(PACKET, ETH_MPLS_MPLS_IP4_TCP)
EXPECT_TRUE(outer_mpls_record->pld_len == 48);
// LAYER_PROTO_MPLS
const struct packet_layer *inner_mpls_record = packet_get_innermost_layer(&handler, LAYER_PROTO_MPLS);
const struct raw_layer *inner_mpls_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_MPLS);
EXPECT_TRUE(inner_mpls_record != nullptr);
EXPECT_TRUE(inner_mpls_record->hdr_offset == 18);
@@ -1192,8 +1192,8 @@ TEST(PACKET, ETH_MPLS_MPLS_IP4_TCP)
EXPECT_TRUE(inner_mpls_record->pld_len == 44);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record != nullptr);
@@ -1203,8 +1203,8 @@ TEST(PACKET, ETH_MPLS_MPLS_IP4_TCP)
EXPECT_TRUE(outer_ipv4_record->pld_len == 24);
// LAYER_PROTO_TCP
const struct packet_layer *outer_tcp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_TCP);
const struct packet_layer *inner_tcp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *outer_tcp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *inner_tcp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_TCP);
EXPECT_TRUE(outer_tcp_record != nullptr);
EXPECT_TRUE(inner_tcp_record != nullptr);
@@ -1341,8 +1341,8 @@ TEST(PACKET, ETH_VLAN_PPPOE_IP4_TCP)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -1352,8 +1352,8 @@ TEST(PACKET, ETH_VLAN_PPPOE_IP4_TCP)
EXPECT_TRUE(outer_eth_record->pld_len == 64);
// LAYER_PROTO_VLAN
const struct packet_layer *outer_vlan_record = packet_get_outermost_layer(&handler, LAYER_PROTO_VLAN);
const struct packet_layer *inner_vlan_record = packet_get_innermost_layer(&handler, LAYER_PROTO_VLAN);
const struct raw_layer *outer_vlan_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_VLAN);
const struct raw_layer *inner_vlan_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_VLAN);
EXPECT_TRUE(outer_vlan_record != nullptr);
EXPECT_TRUE(inner_vlan_record != nullptr);
@@ -1363,8 +1363,8 @@ TEST(PACKET, ETH_VLAN_PPPOE_IP4_TCP)
EXPECT_TRUE(outer_vlan_record->pld_len == 60);
// LAYER_PROTO_PPPOE
const struct packet_layer *outer_pppoe_record = packet_get_outermost_layer(&handler, LAYER_PROTO_PPPOE);
const struct packet_layer *inner_pppoe_record = packet_get_innermost_layer(&handler, LAYER_PROTO_PPPOE);
const struct raw_layer *outer_pppoe_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_PPPOE);
const struct raw_layer *inner_pppoe_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_PPPOE);
EXPECT_TRUE(outer_pppoe_record != nullptr);
EXPECT_TRUE(inner_pppoe_record != nullptr);
@@ -1374,8 +1374,8 @@ TEST(PACKET, ETH_VLAN_PPPOE_IP4_TCP)
EXPECT_TRUE(outer_pppoe_record->pld_len == 54);
// LAYER_PROTO_PPP
const struct packet_layer *outer_ppp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_PPP);
const struct packet_layer *inner_ppp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_PPP);
const struct raw_layer *outer_ppp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_PPP);
const struct raw_layer *inner_ppp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_PPP);
EXPECT_TRUE(outer_ppp_record != nullptr);
EXPECT_TRUE(inner_ppp_record != nullptr);
@@ -1385,8 +1385,8 @@ TEST(PACKET, ETH_VLAN_PPPOE_IP4_TCP)
EXPECT_TRUE(outer_ppp_record->pld_len == 52);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record != nullptr);
@@ -1397,8 +1397,8 @@ TEST(PACKET, ETH_VLAN_PPPOE_IP4_TCP)
EXPECT_TRUE(outer_ipv4_record->pld_len == 32);
// LAYER_PROTO_TCP
const struct packet_layer *outer_tcp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_TCP);
const struct packet_layer *inner_tcp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *outer_tcp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *inner_tcp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_TCP);
EXPECT_TRUE(outer_tcp_record != nullptr);
EXPECT_TRUE(inner_tcp_record != nullptr);
@@ -1593,8 +1593,8 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP6_TCP_TLS)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -1604,7 +1604,7 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP6_TCP_TLS)
EXPECT_TRUE(outer_eth_record->pld_len == 1428);
// LAYER_PROTO_IPV6
const struct packet_layer *outer_ipv6_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *outer_ipv6_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV6);
EXPECT_TRUE(outer_ipv6_record != nullptr);
EXPECT_TRUE(outer_ipv6_record->hdr_offset == 14);
@@ -1612,8 +1612,8 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP6_TCP_TLS)
EXPECT_TRUE(outer_ipv6_record->pld_len == 1388);
// LAYER_PROTO_UDP
const struct packet_layer *outer_udp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_UDP);
const struct packet_layer *inner_udp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *outer_udp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *inner_udp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_UDP);
EXPECT_TRUE(outer_udp_record != nullptr);
EXPECT_TRUE(inner_udp_record != nullptr);
@@ -1623,8 +1623,8 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP6_TCP_TLS)
EXPECT_TRUE(outer_udp_record->pld_len == 1380);
// LAYER_PROTO_GTPV1_U
const struct packet_layer *outer_gtp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_GTPV1_U);
const struct packet_layer *inner_gtp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_GTPV1_U);
const struct raw_layer *outer_gtp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_GTPV1_U);
const struct raw_layer *inner_gtp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_GTPV1_U);
EXPECT_TRUE(outer_gtp_record != nullptr);
EXPECT_TRUE(inner_gtp_record != nullptr);
@@ -1634,7 +1634,7 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP6_TCP_TLS)
EXPECT_TRUE(outer_gtp_record->pld_len == 1372);
// LAYER_PROTO_IPV6
const struct packet_layer *inner_ipv6_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *inner_ipv6_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV6);
EXPECT_TRUE(inner_ipv6_record != nullptr);
EXPECT_TRUE(inner_ipv6_record->hdr_offset == 70);
@@ -1642,8 +1642,8 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP6_TCP_TLS)
EXPECT_TRUE(inner_ipv6_record->pld_len == 1332);
// LAYER_PROTO_TCP
const struct packet_layer *outer_tcp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_TCP);
const struct packet_layer *inner_tcp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *outer_tcp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *inner_tcp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_TCP);
EXPECT_TRUE(outer_tcp_record != nullptr);
EXPECT_TRUE(inner_tcp_record != nullptr);
@@ -1846,8 +1846,8 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP4_TCP_TLS)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -1857,8 +1857,8 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP4_TCP_TLS)
EXPECT_TRUE(outer_eth_record->pld_len == 1456);
// LAYER_PROTO_IPV6
const struct packet_layer *outer_ipv6_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV6);
const struct packet_layer *inner_ipv6_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *outer_ipv6_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *inner_ipv6_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV6);
EXPECT_TRUE(outer_ipv6_record != nullptr);
EXPECT_TRUE(inner_ipv6_record != nullptr);
@@ -1868,8 +1868,8 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP4_TCP_TLS)
EXPECT_TRUE(outer_ipv6_record->pld_len == 1416);
// LAYER_PROTO_UDP
const struct packet_layer *outer_udp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_UDP);
const struct packet_layer *inner_udp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *outer_udp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *inner_udp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_UDP);
EXPECT_TRUE(outer_udp_record != nullptr);
EXPECT_TRUE(inner_udp_record != nullptr);
@@ -1879,8 +1879,8 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP4_TCP_TLS)
EXPECT_TRUE(outer_udp_record->pld_len == 1408);
// LAYER_PROTO_GTPV1_U
const struct packet_layer *outer_gtp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_GTPV1_U);
const struct packet_layer *inner_gtp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_GTPV1_U);
const struct raw_layer *outer_gtp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_GTPV1_U);
const struct raw_layer *inner_gtp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_GTPV1_U);
EXPECT_TRUE(outer_gtp_record != nullptr);
EXPECT_TRUE(inner_gtp_record != nullptr);
@@ -1890,8 +1890,8 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP4_TCP_TLS)
EXPECT_TRUE(outer_gtp_record->pld_len == 1400);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record != nullptr);
@@ -1901,8 +1901,8 @@ TEST(PACKET, ETH_IP6_UDP_GTP_IP4_TCP_TLS)
EXPECT_TRUE(outer_ipv4_record->pld_len == 1380);
// LAYER_PROTO_TCP
const struct packet_layer *outer_tcp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_TCP);
const struct packet_layer *inner_tcp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *outer_tcp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *inner_tcp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_TCP);
EXPECT_TRUE(outer_tcp_record != nullptr);
EXPECT_TRUE(inner_tcp_record != nullptr);
@@ -2047,7 +2047,7 @@ TEST(PACKET, ETH_IP4_UDP_VXLAN_ETH_IP4_UDP_DNS)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(outer_eth_record->hdr_offset == 0);
@@ -2055,7 +2055,7 @@ TEST(PACKET, ETH_IP4_UDP_VXLAN_ETH_IP4_UDP_DNS)
EXPECT_TRUE(outer_eth_record->pld_len == 110);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(outer_ipv4_record->hdr_offset == 14);
@@ -2063,7 +2063,7 @@ TEST(PACKET, ETH_IP4_UDP_VXLAN_ETH_IP4_UDP_DNS)
EXPECT_TRUE(outer_ipv4_record->pld_len == 90);
// LAYER_PROTO_UDP
const struct packet_layer *outer_udp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *outer_udp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_UDP);
EXPECT_TRUE(outer_udp_record != nullptr);
EXPECT_TRUE(outer_udp_record->hdr_offset == 34);
@@ -2071,8 +2071,8 @@ TEST(PACKET, ETH_IP4_UDP_VXLAN_ETH_IP4_UDP_DNS)
EXPECT_TRUE(outer_udp_record->pld_len == 82);
// LAYER_PROTO_VXLAN
const struct packet_layer *outer_g_vlan_record = packet_get_outermost_layer(&handler, LAYER_PROTO_VXLAN);
const struct packet_layer *inner_g_vlan_record = packet_get_innermost_layer(&handler, LAYER_PROTO_VXLAN);
const struct raw_layer *outer_g_vlan_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_VXLAN);
const struct raw_layer *inner_g_vlan_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_VXLAN);
EXPECT_TRUE(outer_g_vlan_record != nullptr);
EXPECT_TRUE(inner_g_vlan_record != nullptr);
@@ -2083,7 +2083,7 @@ TEST(PACKET, ETH_IP4_UDP_VXLAN_ETH_IP4_UDP_DNS)
EXPECT_TRUE(outer_g_vlan_record->pld_len == 74);
// LAYER_PROTO_ETHER
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(inner_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record->hdr_offset == 50);
@@ -2091,7 +2091,7 @@ TEST(PACKET, ETH_IP4_UDP_VXLAN_ETH_IP4_UDP_DNS)
EXPECT_TRUE(inner_eth_record->pld_len == 60);
// LAYER_PROTO_IPV4
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(inner_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record->hdr_offset == 64);
@@ -2099,7 +2099,7 @@ TEST(PACKET, ETH_IP4_UDP_VXLAN_ETH_IP4_UDP_DNS)
EXPECT_TRUE(inner_ipv4_record->pld_len == 40);
// LAYER_PROTO_UDP
const struct packet_layer *inner_udp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *inner_udp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_UDP);
EXPECT_TRUE(inner_udp_record != nullptr);
EXPECT_TRUE(inner_udp_record->hdr_offset == 84);
@@ -2203,7 +2203,7 @@ TEST(PACKET, ETH_MPLS_MPLS_PWETHCW_ETH_ARP)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(outer_eth_record->hdr_offset == 0);
@@ -2211,7 +2211,7 @@ TEST(PACKET, ETH_MPLS_MPLS_PWETHCW_ETH_ARP)
EXPECT_TRUE(outer_eth_record->pld_len == 76);
// LAYER_PROTO_MPLS
const struct packet_layer *outer_mpls_record = packet_get_outermost_layer(&handler, LAYER_PROTO_MPLS);
const struct raw_layer *outer_mpls_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_MPLS);
EXPECT_TRUE(outer_mpls_record != nullptr);
EXPECT_TRUE(outer_mpls_record->hdr_offset == 14);
@@ -2219,7 +2219,7 @@ TEST(PACKET, ETH_MPLS_MPLS_PWETHCW_ETH_ARP)
EXPECT_TRUE(outer_mpls_record->pld_len == 72);
// LAYER_PROTO_MPLS
const struct packet_layer *inner_mpls_record = packet_get_innermost_layer(&handler, LAYER_PROTO_MPLS);
const struct raw_layer *inner_mpls_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_MPLS);
EXPECT_TRUE(inner_mpls_record != nullptr);
EXPECT_TRUE(inner_mpls_record->hdr_offset == 18);
@@ -2227,7 +2227,7 @@ TEST(PACKET, ETH_MPLS_MPLS_PWETHCW_ETH_ARP)
EXPECT_TRUE(inner_mpls_record->pld_len == 68);
// LAYER_PROTO_PWETHCW
const struct packet_layer *inner_pweth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_PWETH);
const struct raw_layer *inner_pweth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_PWETH);
EXPECT_TRUE(inner_pweth_record != nullptr);
EXPECT_TRUE(inner_pweth_record->hdr_offset == 22);
@@ -2235,7 +2235,7 @@ TEST(PACKET, ETH_MPLS_MPLS_PWETHCW_ETH_ARP)
EXPECT_TRUE(inner_pweth_record->pld_len == 64);
// LAYER_PROTO_ETHER
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(inner_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record->hdr_offset == 26);
@@ -2339,8 +2339,8 @@ TEST(PACKET, ETH_IP4_ICMP)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -2350,8 +2350,8 @@ TEST(PACKET, ETH_IP4_ICMP)
EXPECT_TRUE(outer_eth_record->pld_len == 84);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record != nullptr);
@@ -2361,8 +2361,8 @@ TEST(PACKET, ETH_IP4_ICMP)
EXPECT_TRUE(outer_ipv4_record->pld_len == 64);
// LAYER_PROTO_ICMP
const struct packet_layer *outer_icmp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ICMP);
const struct packet_layer *inner_icmp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ICMP);
const struct raw_layer *outer_icmp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ICMP);
const struct raw_layer *inner_icmp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ICMP);
EXPECT_TRUE(outer_icmp_record != nullptr);
EXPECT_TRUE(inner_icmp_record != nullptr);
@@ -2444,8 +2444,8 @@ TEST(PACKET, ETH_IP6_ICMP6)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -2455,8 +2455,8 @@ TEST(PACKET, ETH_IP6_ICMP6)
EXPECT_TRUE(outer_eth_record->pld_len == 100);
// LAYER_PROTO_IPV6
const struct packet_layer *outer_ipv6_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV6);
const struct packet_layer *inner_ipv6_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *outer_ipv6_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV6);
const struct raw_layer *inner_ipv6_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV6);
EXPECT_TRUE(outer_ipv6_record != nullptr);
EXPECT_TRUE(inner_ipv6_record != nullptr);
@@ -2466,8 +2466,8 @@ TEST(PACKET, ETH_IP6_ICMP6)
EXPECT_TRUE(outer_ipv6_record->pld_len == 60);
// LAYER_PROTO_ICMP6
const struct packet_layer *outer_icmp6_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ICMP6);
const struct packet_layer *inner_icmp6_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ICMP6);
const struct raw_layer *outer_icmp6_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ICMP6);
const struct raw_layer *inner_icmp6_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ICMP6);
EXPECT_TRUE(outer_icmp6_record != nullptr);
EXPECT_TRUE(inner_icmp6_record != nullptr);
@@ -2608,7 +2608,7 @@ TEST(PACKET, ETH_IP4_UDP_L2TPV2_PPP_IP4_UDP)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(outer_eth_record->hdr_offset == 0);
@@ -2616,7 +2616,7 @@ TEST(PACKET, ETH_IP4_UDP_L2TPV2_PPP_IP4_UDP)
EXPECT_TRUE(outer_eth_record->pld_len == 136);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(outer_ipv4_record->hdr_offset == 14);
@@ -2624,7 +2624,7 @@ TEST(PACKET, ETH_IP4_UDP_L2TPV2_PPP_IP4_UDP)
EXPECT_TRUE(outer_ipv4_record->pld_len == 116);
// LAYER_PROTO_UDP
const struct packet_layer *outer_udp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *outer_udp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_UDP);
EXPECT_TRUE(outer_udp_record != nullptr);
EXPECT_TRUE(outer_udp_record->hdr_offset == 34);
@@ -2632,7 +2632,7 @@ TEST(PACKET, ETH_IP4_UDP_L2TPV2_PPP_IP4_UDP)
EXPECT_TRUE(outer_udp_record->pld_len == 108);
// LAYER_PROTO_L2TP
const struct packet_layer *outer_l2tpv2_record = packet_get_outermost_layer(&handler, LAYER_PROTO_L2TP);
const struct raw_layer *outer_l2tpv2_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_L2TP);
EXPECT_TRUE(outer_l2tpv2_record != nullptr);
EXPECT_TRUE(outer_l2tpv2_record->hdr_offset == 42);
@@ -2640,7 +2640,7 @@ TEST(PACKET, ETH_IP4_UDP_L2TPV2_PPP_IP4_UDP)
EXPECT_TRUE(outer_l2tpv2_record->pld_len == 100);
// LAYER_PROTO_PPP
const struct packet_layer *outer_ppp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_PPP);
const struct raw_layer *outer_ppp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_PPP);
EXPECT_TRUE(outer_ppp_record != nullptr);
EXPECT_TRUE(outer_ppp_record->hdr_offset == 50);
@@ -2648,7 +2648,7 @@ TEST(PACKET, ETH_IP4_UDP_L2TPV2_PPP_IP4_UDP)
EXPECT_TRUE(outer_ppp_record->pld_len == 96);
// LAYER_PROTO_IPV4
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(inner_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record->hdr_offset == 54);
@@ -2656,7 +2656,7 @@ TEST(PACKET, ETH_IP4_UDP_L2TPV2_PPP_IP4_UDP)
EXPECT_TRUE(inner_ipv4_record->pld_len == 76);
// LAYER_PROTO_UDP
const struct packet_layer *inner_udp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_UDP);
const struct raw_layer *inner_udp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_UDP);
EXPECT_TRUE(inner_udp_record != nullptr);
EXPECT_TRUE(inner_udp_record->hdr_offset == 74);
@@ -2772,8 +2772,8 @@ TEST(PACKET, ETH_IP4_TCP_PADDING)
******************************************************/
// LAYER_PROTO_ETHER
const struct packet_layer *outer_eth_record = packet_get_outermost_layer(&handler, LAYER_PROTO_ETHER);
const struct packet_layer *inner_eth_record = packet_get_innermost_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *outer_eth_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_ETHER);
const struct raw_layer *inner_eth_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_ETHER);
EXPECT_TRUE(outer_eth_record != nullptr);
EXPECT_TRUE(inner_eth_record != nullptr);
@@ -2783,8 +2783,8 @@ TEST(PACKET, ETH_IP4_TCP_PADDING)
EXPECT_TRUE(outer_eth_record->pld_len == 46);
// LAYER_PROTO_IPV4
const struct packet_layer *outer_ipv4_record = packet_get_outermost_layer(&handler, LAYER_PROTO_IPV4);
const struct packet_layer *inner_ipv4_record = packet_get_innermost_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *outer_ipv4_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_IPV4);
const struct raw_layer *inner_ipv4_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_IPV4);
EXPECT_TRUE(outer_ipv4_record != nullptr);
EXPECT_TRUE(inner_ipv4_record != nullptr);
@@ -2794,8 +2794,8 @@ TEST(PACKET, ETH_IP4_TCP_PADDING)
EXPECT_TRUE(outer_ipv4_record->pld_len == 20);
// LAYER_PROTO_TCP
const struct packet_layer *outer_tcp_record = packet_get_outermost_layer(&handler, LAYER_PROTO_TCP);
const struct packet_layer *inner_tcp_record = packet_get_innermost_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *outer_tcp_record = packet_get_outermost_raw_layer(&handler, LAYER_PROTO_TCP);
const struct raw_layer *inner_tcp_record = packet_get_innermost_raw_layer(&handler, LAYER_PROTO_TCP);
EXPECT_TRUE(outer_tcp_record != nullptr);
EXPECT_TRUE(inner_tcp_record != nullptr);