重构Packet Parser

This commit is contained in:
luwenpeng
2023-11-13 16:56:31 +08:00
parent 07f41fc298
commit b4c688c87c
17 changed files with 1823 additions and 2680 deletions

View File

@@ -11,8 +11,10 @@ TEST(STREAM_TABLE, INSERT)
char *val_hello = strdup("HELLO");
char *val_world = strdup("WORLD");
INIT_ADDR_V4(addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
INIT_ADDR_V6(addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr1;
SET_HUMAN_READABLE_IPV4_TUPLE(&addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
struct four_tuple addr2;
SET_HUMAN_READABLE_IPV6_TUPLE(&addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
// TEST Insert
EXPECT_TRUE(session_table_insert(table, 1, &addr1, val_hello, free) == 0);
@@ -35,9 +37,12 @@ TEST(STREAM_TABLE, SEARCH_BY_ID)
char *val_hello = strdup("HELLO");
char *val_world = strdup("WORLD");
INIT_ADDR_V4(addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
INIT_ADDR_V6(addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
INIT_ADDR_V4(addr3, "1.1.1.1", 1111, "2.2.2.2", 2222);
struct four_tuple addr1;
SET_HUMAN_READABLE_IPV4_TUPLE(&addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
struct four_tuple addr2;
SET_HUMAN_READABLE_IPV6_TUPLE(&addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr3;
SET_HUMAN_READABLE_IPV4_TUPLE(&addr3, "1.1.1.1", 1111, "2.2.2.2", 2222);
// TEST Insert
EXPECT_TRUE(session_table_insert(table, 1, &addr1, val_hello, free) == 0);
@@ -67,9 +72,12 @@ TEST(STREAM_TABLE, SEARCH_BY_ADDR)
char *val_hello = strdup("HELLO");
char *val_world = strdup("WORLD");
INIT_ADDR_V4(addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
INIT_ADDR_V6(addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
INIT_ADDR_V4(addr3, "1.1.1.1", 1111, "2.2.2.2", 2222);
struct four_tuple addr1;
SET_HUMAN_READABLE_IPV4_TUPLE(&addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
struct four_tuple addr2;
SET_HUMAN_READABLE_IPV6_TUPLE(&addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr3;
SET_HUMAN_READABLE_IPV4_TUPLE(&addr3, "1.1.1.1", 1111, "2.2.2.2", 2222);
// TEST Insert
EXPECT_TRUE(session_table_insert(table, 1, &addr1, val_hello, free) == 0);
@@ -99,8 +107,10 @@ TEST(STREAM_TABLE, SEARCH_BY_REVERSE_ADDR)
char *val_hello = strdup("HELLO");
char *val_world = strdup("WORLD");
INIT_ADDR_V4(addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
INIT_ADDR_V6(addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr1;
SET_HUMAN_READABLE_IPV4_TUPLE(&addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
struct four_tuple addr2;
SET_HUMAN_READABLE_IPV6_TUPLE(&addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr1_reverse;
struct four_tuple addr2_reverse;
four_tuple_reverse(&addr1, &addr1_reverse);
@@ -132,8 +142,10 @@ TEST(STREAM_TABLE, DELETE_BY_ID)
char *val_hello = strdup("HELLO");
char *val_world = strdup("WORLD");
INIT_ADDR_V4(addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
INIT_ADDR_V6(addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr1;
SET_HUMAN_READABLE_IPV4_TUPLE(&addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
struct four_tuple addr2;
SET_HUMAN_READABLE_IPV6_TUPLE(&addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr1_reverse;
struct four_tuple addr2_reverse;
four_tuple_reverse(&addr1, &addr1_reverse);
@@ -169,8 +181,10 @@ TEST(STREAM_TABLE, DELETE_BY_ADDR)
char *val_hello = strdup("HELLO");
char *val_world = strdup("WORLD");
INIT_ADDR_V4(addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
INIT_ADDR_V6(addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr1;
SET_HUMAN_READABLE_IPV4_TUPLE(&addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
struct four_tuple addr2;
SET_HUMAN_READABLE_IPV6_TUPLE(&addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr1_reverse;
struct four_tuple addr2_reverse;
four_tuple_reverse(&addr1, &addr1_reverse);
@@ -206,8 +220,10 @@ TEST(STREAM_TABLE, DELETE_BY_REVERSE_ADDR)
char *val_hello = strdup("HELLO");
char *val_world = strdup("WORLD");
INIT_ADDR_V4(addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
INIT_ADDR_V6(addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr1;
SET_HUMAN_READABLE_IPV4_TUPLE(&addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
struct four_tuple addr2;
SET_HUMAN_READABLE_IPV6_TUPLE(&addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr1_reverse;
struct four_tuple addr2_reverse;
four_tuple_reverse(&addr1, &addr1_reverse);
@@ -243,8 +259,10 @@ TEST(STREAM_TABLE, RESET)
char *val_hello = strdup("HELLO");
char *val_world = strdup("WORLD");
INIT_ADDR_V4(addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
INIT_ADDR_V6(addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
struct four_tuple addr1;
SET_HUMAN_READABLE_IPV4_TUPLE(&addr1, "1.2.3.4", 1234, "4.3.2.1", 4321);
struct four_tuple addr2;
SET_HUMAN_READABLE_IPV6_TUPLE(&addr2, "2:3:4::5", 2345, "5:4:3::2", 5342);
// TEST Insert
EXPECT_TRUE(session_table_insert(table, 1, &addr1, val_hello, free) == 0);