Update API of manipulation session
This commit is contained in:
@@ -48,7 +48,7 @@ struct session_manager_options opts = {
|
||||
|
||||
static void packet_set_ip_id(struct packet *pkt, uint16_t ip_id)
|
||||
{
|
||||
const struct layer *ipv4_layer = packet_get_innermost_layer(pkt, LAYER_TYPE_IPV4);
|
||||
const struct pkt_layer *ipv4_layer = packet_get_innermost_layer(pkt, LAYER_TYPE_IPV4);
|
||||
EXPECT_TRUE(ipv4_layer);
|
||||
struct ip *hdr = (struct ip *)ipv4_layer->hdr_ptr;
|
||||
ipv4_hdr_set_ipid(hdr, ip_id);
|
||||
@@ -75,7 +75,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYN_DUP)
|
||||
// new session
|
||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 0);
|
||||
@@ -91,7 +91,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYN_DUP)
|
||||
EXPECT_TRUE(sess);
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == -1);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_YES);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 1);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 1);
|
||||
@@ -110,7 +110,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYN_DUP)
|
||||
EXPECT_TRUE(sess);
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_YES);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 1);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 1);
|
||||
@@ -141,7 +141,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYNACK_DUP)
|
||||
// new session
|
||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 0);
|
||||
@@ -157,7 +157,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYNACK_DUP)
|
||||
EXPECT_TRUE(sess);
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == -1);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_YES);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 1);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 1);
|
||||
@@ -176,7 +176,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYNACK_DUP)
|
||||
EXPECT_TRUE(sess);
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_YES);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 1);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 1);
|
||||
@@ -208,7 +208,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SKIP)
|
||||
// new session
|
||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 0);
|
||||
@@ -226,7 +226,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SKIP)
|
||||
EXPECT_TRUE(sess);
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 0);
|
||||
@@ -244,7 +244,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SKIP)
|
||||
EXPECT_TRUE(sess);
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 0);
|
||||
@@ -260,7 +260,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SKIP)
|
||||
EXPECT_TRUE(sess);
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 0);
|
||||
@@ -294,7 +294,7 @@ TEST(TCP_DUPKT_FILTER_DISABLE, SYN_DUP)
|
||||
// new session
|
||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 0);
|
||||
@@ -310,7 +310,7 @@ TEST(TCP_DUPKT_FILTER_DISABLE, SYN_DUP)
|
||||
EXPECT_TRUE(sess);
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 0);
|
||||
@@ -344,7 +344,7 @@ TEST(TCP_DUPKT_FILTER_DISABLE, SYNACK_DUP)
|
||||
// new session
|
||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 0);
|
||||
@@ -360,7 +360,7 @@ TEST(TCP_DUPKT_FILTER_DISABLE, SYNACK_DUP)
|
||||
EXPECT_TRUE(sess);
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
stat = session_manager_get_stat(mgr);
|
||||
EXPECT_TRUE(stat);
|
||||
EXPECT_TRUE(stat->dup_pkt.nr_pkts == 0);
|
||||
|
||||
@@ -50,7 +50,7 @@ struct session_manager_options opts = {
|
||||
|
||||
static void packet_set_tcp_src_addr(struct packet *pkt, uint32_t addr)
|
||||
{
|
||||
const struct layer *ipv4_layer = packet_get_innermost_layer(pkt, LAYER_TYPE_IPV4);
|
||||
const struct pkt_layer *ipv4_layer = packet_get_innermost_layer(pkt, LAYER_TYPE_IPV4);
|
||||
EXPECT_TRUE(ipv4_layer);
|
||||
struct ip *hdr = (struct ip *)ipv4_layer->hdr_ptr;
|
||||
ipv4_hdr_set_src_addr(hdr, addr);
|
||||
|
||||
@@ -50,7 +50,7 @@ struct session_manager_options opts = {
|
||||
|
||||
static void packet_set_tcp_src_addr(struct packet *pkt, uint32_t addr)
|
||||
{
|
||||
const struct layer *ipv4_layer = packet_get_innermost_layer(pkt, LAYER_TYPE_IPV4);
|
||||
const struct pkt_layer *ipv4_layer = packet_get_innermost_layer(pkt, LAYER_TYPE_IPV4);
|
||||
EXPECT_TRUE(ipv4_layer);
|
||||
struct ip *hdr = (struct ip *)ipv4_layer->hdr_ptr;
|
||||
ipv4_hdr_set_src_addr(hdr, addr);
|
||||
|
||||
@@ -83,7 +83,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||
EXPECT_TRUE(sess);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload == NULL);
|
||||
EXPECT_TRUE(len == 0);
|
||||
|
||||
@@ -98,7 +98,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload == NULL);
|
||||
EXPECT_TRUE(len == 0);
|
||||
|
||||
@@ -113,7 +113,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload == NULL);
|
||||
EXPECT_TRUE(len == 0);
|
||||
|
||||
@@ -128,7 +128,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 4) == 0);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload == NULL);
|
||||
EXPECT_TRUE(len == 0);
|
||||
|
||||
@@ -143,7 +143,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 5) == 0);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload == NULL);
|
||||
EXPECT_TRUE(len == 0);
|
||||
|
||||
@@ -158,7 +158,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 6) == 0);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload == NULL);
|
||||
EXPECT_TRUE(len == 0);
|
||||
|
||||
@@ -202,40 +202,40 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
||||
0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35,
|
||||
0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x0a};
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload != NULL);
|
||||
EXPECT_TRUE(len == sizeof(payload1));
|
||||
EXPECT_TRUE(memcmp((void *)payload, payload1, sizeof(payload1)) == 0);
|
||||
hex_dump(payload, len);
|
||||
session_consume_tcp_payload(sess, len);
|
||||
tcp_data_dequeue(sess, len);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload != NULL);
|
||||
EXPECT_TRUE(len == sizeof(payload2));
|
||||
EXPECT_TRUE(memcmp((void *)payload, payload2, sizeof(payload2)) == 0);
|
||||
hex_dump(payload, len);
|
||||
session_consume_tcp_payload(sess, len);
|
||||
tcp_data_dequeue(sess, len);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload != NULL);
|
||||
EXPECT_TRUE(len == sizeof(payload3));
|
||||
EXPECT_TRUE(memcmp((void *)payload, payload3, sizeof(payload3)) == 0);
|
||||
hex_dump(payload, len);
|
||||
session_consume_tcp_payload(sess, len);
|
||||
tcp_data_dequeue(sess, len);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload != NULL);
|
||||
EXPECT_TRUE(len == sizeof(payload4));
|
||||
EXPECT_TRUE(memcmp((void *)payload, payload4, sizeof(payload4)) == 0);
|
||||
hex_dump(payload, len);
|
||||
session_consume_tcp_payload(sess, len);
|
||||
tcp_data_dequeue(sess, len);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload != NULL);
|
||||
EXPECT_TRUE(len == sizeof(payload5));
|
||||
EXPECT_TRUE(memcmp((void *)payload, payload5, sizeof(payload5)) == 0);
|
||||
hex_dump(payload, len);
|
||||
session_consume_tcp_payload(sess, len);
|
||||
tcp_data_dequeue(sess, len);
|
||||
|
||||
// expire session
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 7 + opts.tcp_data_timeout) == NULL); // active -> closing
|
||||
@@ -274,7 +274,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, SEQ_WRAPAROUND)
|
||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||
EXPECT_TRUE(sess);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload == NULL);
|
||||
EXPECT_TRUE(len == 0);
|
||||
|
||||
@@ -289,7 +289,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, SEQ_WRAPAROUND)
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload == NULL);
|
||||
EXPECT_TRUE(len == 0);
|
||||
|
||||
@@ -304,12 +304,12 @@ TEST(SESS_MGR_TCP_REASSEMBLY, SEQ_WRAPAROUND)
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload != NULL);
|
||||
EXPECT_TRUE(len == sizeof(tcp_seq_wraparound_pkt3_payload));
|
||||
EXPECT_TRUE(memcmp((void *)payload, tcp_seq_wraparound_pkt3_payload, sizeof(tcp_seq_wraparound_pkt3_payload)) == 0);
|
||||
hex_dump(payload, len);
|
||||
session_consume_tcp_payload(sess, len);
|
||||
tcp_data_dequeue(sess, len);
|
||||
|
||||
// C2S Data Packet
|
||||
printf("\n=> Packet Parse: TCP C2S Data packet\n");
|
||||
@@ -322,12 +322,12 @@ TEST(SESS_MGR_TCP_REASSEMBLY, SEQ_WRAPAROUND)
|
||||
// update session
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 4) == 0);
|
||||
|
||||
payload = session_peek_tcp_payload(sess, &len);
|
||||
payload = tcp_data_peek(sess, &len);
|
||||
EXPECT_TRUE(payload != NULL);
|
||||
EXPECT_TRUE(len == sizeof(tcp_seq_wraparound_pkt4_payload));
|
||||
EXPECT_TRUE(memcmp((void *)payload, tcp_seq_wraparound_pkt4_payload, sizeof(tcp_seq_wraparound_pkt4_payload)) == 0);
|
||||
hex_dump(payload, len);
|
||||
session_consume_tcp_payload(sess, len);
|
||||
tcp_data_dequeue(sess, len);
|
||||
|
||||
// expire session
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 4 + opts.tcp_data_timeout) == NULL); // active -> closing
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "session_private.h"
|
||||
#include "session.h"
|
||||
|
||||
#define SESSION_KEY_IPV4_TCP(name) \
|
||||
struct tuple6 name; \
|
||||
|
||||
@@ -77,17 +77,17 @@ TEST(SESSION_TABLE, OP_SESSION)
|
||||
sess1 = session_pool_pop(sess_pool);
|
||||
EXPECT_TRUE(sess1 != NULL);
|
||||
session_set_id(sess1, 1);
|
||||
session_set_key(sess1, &tuple_1);
|
||||
session_set_tuple(sess1, &tuple_1);
|
||||
|
||||
sess2 = session_pool_pop(sess_pool);
|
||||
EXPECT_TRUE(sess2 != NULL);
|
||||
session_set_id(sess2, 2);
|
||||
session_set_key(sess2, &tuple_2);
|
||||
session_set_tuple(sess2, &tuple_2);
|
||||
|
||||
sess3 = session_pool_pop(sess_pool);
|
||||
EXPECT_TRUE(sess3 != NULL);
|
||||
session_set_id(sess3, 3);
|
||||
session_set_key(sess3, &tuple_3);
|
||||
session_set_tuple(sess3, &tuple_3);
|
||||
|
||||
EXPECT_TRUE(session_table_add(sess_table, &tuple_1, sess1) == 0);
|
||||
EXPECT_TRUE(session_table_get_count(sess_table) == 1);
|
||||
@@ -152,21 +152,21 @@ TEST(SESSION_TABLE, FIND_OLDEST_NEWEST)
|
||||
sess1 = session_pool_pop(sess_pool);
|
||||
EXPECT_TRUE(sess1 != NULL);
|
||||
session_set_id(sess1, 1);
|
||||
session_set_key(sess1, &tuple_1);
|
||||
session_set_tuple(sess1, &tuple_1);
|
||||
EXPECT_TRUE(session_table_add(sess_table, &tuple_1, sess1) == 0);
|
||||
EXPECT_TRUE(session_table_find_lru(sess_table) == sess1);
|
||||
|
||||
sess2 = session_pool_pop(sess_pool);
|
||||
EXPECT_TRUE(sess2 != NULL);
|
||||
session_set_id(sess2, 2);
|
||||
session_set_key(sess2, &tuple_2);
|
||||
session_set_tuple(sess2, &tuple_2);
|
||||
EXPECT_TRUE(session_table_add(sess_table, &tuple_2, sess2) == 0);
|
||||
EXPECT_TRUE(session_table_find_lru(sess_table) == sess1);
|
||||
|
||||
sess3 = session_pool_pop(sess_pool);
|
||||
EXPECT_TRUE(sess3 != NULL);
|
||||
session_set_id(sess3, 3);
|
||||
session_set_key(sess3, &tuple_3);
|
||||
session_set_tuple(sess3, &tuple_3);
|
||||
EXPECT_TRUE(session_table_add(sess_table, &tuple_3, sess3) == 0);
|
||||
EXPECT_TRUE(session_table_find_lru(sess_table) == sess1);
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "session_timer.h"
|
||||
#include "session_private.h"
|
||||
|
||||
TEST(SESSION_TIMER, EXPIRE)
|
||||
{
|
||||
|
||||
@@ -116,23 +116,23 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_FIN_FIN)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 145 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 3);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 145 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 3);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -190,7 +190,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_RST)
|
||||
char tcp_pkt_c2s_rst[1500] = {0};
|
||||
memcpy(tcp_pkt_c2s_rst, tcp_pkt9_c2s_fin, sizeof(tcp_pkt9_c2s_fin));
|
||||
packet_parse(&pkt, (const char *)tcp_pkt_c2s_rst, sizeof(tcp_pkt9_c2s_fin));
|
||||
const struct layer *tcp_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_TCP);
|
||||
const struct pkt_layer *tcp_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_TCP);
|
||||
EXPECT_TRUE(tcp_layer);
|
||||
struct tcphdr *hdr = (struct tcphdr *)tcp_layer->hdr_ptr;
|
||||
tcp_hdr_set_flags(hdr, 0);
|
||||
@@ -204,23 +204,23 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_RST)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_RST);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 145 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 3);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 145 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 3);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -278,7 +278,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_RST)
|
||||
char tcp_pkt_s2c_rst[1500] = {0};
|
||||
memcpy(tcp_pkt_s2c_rst, tcp_pkt10_s2c_fin, sizeof(tcp_pkt10_s2c_fin));
|
||||
packet_parse(&pkt, (const char *)tcp_pkt_s2c_rst, sizeof(tcp_pkt10_s2c_fin));
|
||||
const struct layer *tcp_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_TCP);
|
||||
const struct pkt_layer *tcp_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_TCP);
|
||||
EXPECT_TRUE(tcp_layer);
|
||||
struct tcphdr *hdr = (struct tcphdr *)tcp_layer->hdr_ptr;
|
||||
tcp_hdr_set_flags(hdr, 0);
|
||||
@@ -292,23 +292,23 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_RST)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_RST);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 145);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 3);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 145);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 3);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -422,23 +422,23 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_HALF_CLOSED_TIMEOUT)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 145 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 3);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 145 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 3);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -503,23 +503,23 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_HALF_CLOSED_TIMEOUT)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_FIN);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 145);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 3);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 145);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 3);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
|
||||
@@ -75,24 +75,23 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN)
|
||||
EXPECT_TRUE(sess);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 1);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get0_1st_pkt(sess) == session_get0_c2s_1st_pkt(sess));
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -155,24 +154,23 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK)
|
||||
EXPECT_TRUE(sess);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "93.184.216.34:80 -> 192.168.38.105:60111, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 1);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_1st_pkt(sess) == session_get0_s2c_1st_pkt(sess));
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -246,24 +244,23 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_1st_pkt(sess) == session_get0_c2s_1st_pkt(sess));
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -348,23 +345,23 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 3);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 3);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -433,7 +430,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
||||
char syn_retransmission[1500] = {0};
|
||||
memcpy(syn_retransmission, tcp_pkt1_c2s_syn, sizeof(tcp_pkt1_c2s_syn));
|
||||
packet_parse(&pkt, (const char *)syn_retransmission, sizeof(tcp_pkt1_c2s_syn));
|
||||
const struct layer *ipv4_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_IPV4);
|
||||
const struct pkt_layer *ipv4_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_IPV4);
|
||||
struct ip *hdr = (struct ip *)ipv4_layer->hdr_ptr;
|
||||
ipv4_hdr_set_ipid(hdr, 0x1234);
|
||||
printf("<= Packet Parse: done\n\n");
|
||||
@@ -445,24 +442,23 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 78);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 78);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get0_1st_pkt(sess) == session_get0_c2s_1st_pkt(sess));
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -531,7 +527,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
||||
char tcp_pkt_s2c_synack_retransmission[1500] = {0};
|
||||
memcpy(tcp_pkt_s2c_synack_retransmission, tcp_pkt2_s2c_syn_ack, sizeof(tcp_pkt2_s2c_syn_ack));
|
||||
packet_parse(&pkt, (const char *)tcp_pkt_s2c_synack_retransmission, sizeof(tcp_pkt2_s2c_syn_ack));
|
||||
const struct layer *ipv4_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_IPV4);
|
||||
const struct pkt_layer *ipv4_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_IPV4);
|
||||
EXPECT_TRUE(ipv4_layer);
|
||||
struct ip *hdr = (struct ip *)ipv4_layer->hdr_ptr;
|
||||
ipv4_hdr_set_ipid(hdr, 0x1234);
|
||||
@@ -544,24 +540,23 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "93.184.216.34:80 -> 192.168.38.105:60111, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 74);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74 + 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_1st_pkt(sess) == session_get0_s2c_1st_pkt(sess));
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -635,24 +630,23 @@ TEST(TCP_INIT_TO_OPENING, BY_C2S_ASMMETRIC)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get0_1st_pkt(sess) == session_get0_c2s_1st_pkt(sess));
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -726,24 +720,23 @@ TEST(TCP_INIT_TO_OPENING, BY_S2C_ASMMETRIC)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "93.184.216.34:80 -> 192.168.38.105:60111, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_1st_pkt(sess) == session_get0_s2c_1st_pkt(sess));
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
|
||||
@@ -71,23 +71,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 1);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
|
||||
// S2C SYNACK Packet
|
||||
printf("\n=> Packet Parse: TCP S2C SYNACK packet\n");
|
||||
@@ -102,23 +102,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
|
||||
// C2S ACK Packet
|
||||
printf("\n=> Packet Parse: TCP C2S ACK packet\n");
|
||||
@@ -133,23 +133,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 3);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 3);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
|
||||
// C2S REQ Packet
|
||||
printf("\n=> Packet Parse: TCP C2S REQ packet\n");
|
||||
@@ -164,23 +164,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66 + 145);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 4);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66 + 145);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 4);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
|
||||
// S2C ACK Packet
|
||||
printf("\n=> Packet Parse: TCP S2C ACK packet\n");
|
||||
@@ -195,23 +195,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66 + 145);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 5);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66 + 145);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 5);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
|
||||
// S2C HTTP Resp Packet1
|
||||
printf("\n=> Packet Parse: TCP S2C Resp packet1\n");
|
||||
@@ -226,23 +226,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66 + 145);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 6);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66 + 145);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74 + 66 + 1354);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 6);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
|
||||
// S2C HTTP Resp Packet2
|
||||
printf("\n=> Packet Parse: TCP S2C Resp packet2\n");
|
||||
@@ -257,23 +257,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66 + 145);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354 + 385);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 7);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66 + 145);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74 + 66 + 1354 + 385);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 7);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
|
||||
// C2S ACK Packet
|
||||
printf("\n=> Packet Parse: TCP C2S ACK packet\n");
|
||||
@@ -288,23 +288,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66 + 145 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354 + 385);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 8);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66 + 145 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74 + 66 + 1354 + 385);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 8);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
|
||||
// C2S FIN Packet
|
||||
printf("\n=> Packet Parse: TCP C2S FIN packet\n");
|
||||
@@ -319,23 +319,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66 + 145 + 66 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354 + 385);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 9);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66 + 145 + 66 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74 + 66 + 1354 + 385);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 9);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
|
||||
// S2C FIN Packet
|
||||
printf("\n=> Packet Parse: TCP S2C FIN packet\n");
|
||||
@@ -350,23 +350,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66 + 145 + 66 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354 + 385 + 66);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 10);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66 + 145 + 66 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74 + 66 + 1354 + 385 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 10);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
|
||||
// C2S ACK Packet
|
||||
printf("\n=> Packet Parse: TCP C2S ACK packet\n");
|
||||
@@ -381,23 +381,23 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66 + 145 + 66 + 66 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354 + 385 + 66);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 11);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66 + 145 + 66 + 66 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74 + 66 + 1354 + 385 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 11);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
|
||||
// check stat
|
||||
session_manager_print_stat(mgr);
|
||||
|
||||
@@ -85,23 +85,23 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYN_C2S_DATA)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 145);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 145);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -175,23 +175,23 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYNACK_S2C_DATA)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "93.184.216.34:80 -> 192.168.38.105:60111, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 1354);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74 + 1354);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
|
||||
@@ -97,23 +97,23 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 3);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 3);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -179,7 +179,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_RST)
|
||||
char tcp_pkt_c2s_rst[1500] = {0};
|
||||
memcpy(tcp_pkt_c2s_rst, tcp_pkt9_c2s_fin, sizeof(tcp_pkt9_c2s_fin));
|
||||
packet_parse(&pkt, (const char *)tcp_pkt_c2s_rst, sizeof(tcp_pkt9_c2s_fin));
|
||||
const struct layer *tcp_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_TCP);
|
||||
const struct pkt_layer *tcp_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_TCP);
|
||||
EXPECT_TRUE(tcp_layer);
|
||||
struct tcphdr *hdr = (struct tcphdr *)tcp_layer->hdr_ptr;
|
||||
tcp_hdr_set_flags(hdr, 0);
|
||||
@@ -193,23 +193,23 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_RST)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_RST);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -275,7 +275,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_RST)
|
||||
char tcp_pkt_s2c_rst[1500] = {0};
|
||||
memcpy(tcp_pkt_s2c_rst, tcp_pkt10_s2c_fin, sizeof(tcp_pkt10_s2c_fin));
|
||||
packet_parse(&pkt, (const char *)tcp_pkt_s2c_rst, sizeof(tcp_pkt10_s2c_fin));
|
||||
const struct layer *tcp_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_TCP);
|
||||
const struct pkt_layer *tcp_layer = packet_get_innermost_layer(&pkt, LAYER_TYPE_TCP);
|
||||
EXPECT_TRUE(tcp_layer);
|
||||
struct tcphdr *hdr = (struct tcphdr *)tcp_layer->hdr_ptr;
|
||||
tcp_hdr_set_flags(hdr, 0);
|
||||
@@ -289,23 +289,23 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_RST)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_RST);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -436,23 +436,23 @@ TEST(TCP_OPENING_TO_CLOSING, BY_HANDSHAKE_TIMEOUT)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -537,23 +537,23 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 3);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 3);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -627,23 +627,23 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_HALF_FIN)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78 + 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -716,23 +716,23 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_HALF_FIN)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_FIN);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 78);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 78);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 66);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
|
||||
@@ -70,23 +70,23 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
||||
EXPECT_TRUE(sess);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:61099 -> 121.14.154.93:53, proto: 17, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_UDP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 1);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
|
||||
// S2C RESP Packet
|
||||
printf("\n=> Packet Parse: UDP S2C RESP packet\n");
|
||||
@@ -100,23 +100,23 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:61099 -> 121.14.154.93:53, proto: 17, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_UDP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 550);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 2);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 550);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 2);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
|
||||
@@ -75,23 +75,23 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_C2S)
|
||||
EXPECT_TRUE(sess);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:61099 -> 121.14.154.93:53, proto: 17, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_UDP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 74);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 74);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 1);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) != NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) == NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
@@ -155,24 +155,23 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_S2C)
|
||||
EXPECT_TRUE(sess);
|
||||
|
||||
EXPECT_TRUE(session_get_id(sess) != 0);
|
||||
tuple6_to_str(session_get0_key(sess), buffer, sizeof(buffer));
|
||||
tuple6_to_str(session_get_tuple(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "121.14.154.93:53 -> 192.168.38.105:61099, proto: 17, domain: 0");
|
||||
EXPECT_TRUE(session_get_key_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get_tuple_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_UDP);
|
||||
EXPECT_TRUE(session_get_dup_traffic_flag(sess) == DUP_TRAFFIC_NO);
|
||||
EXPECT_TRUE(session_has_dup_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
EXPECT_TRUE(session_get_c2s_bytes(sess) == 0);
|
||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 550);
|
||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||
EXPECT_TRUE(session_get_new_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get_last_time(sess) == 1);
|
||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_BYTES) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_BYTES) == 550);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_C2S_PACKETS) == 0);
|
||||
EXPECT_TRUE(session_get_metric(sess, SESSION_METRIC_S2C_PACKETS) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_NEW) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST) == 1);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_CURRENT) == &pkt);
|
||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||
EXPECT_TRUE(session_get0_c2s_1st_pkt(sess) == NULL);
|
||||
EXPECT_TRUE(session_get0_s2c_1st_pkt(sess) != NULL);
|
||||
EXPECT_TRUE(session_get0_1st_pkt(sess) == session_get0_s2c_1st_pkt(sess));
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_C2S_1ST) == NULL);
|
||||
EXPECT_TRUE(session_get_packet(sess, SESSION_PACKET_S2C_1ST) != NULL);
|
||||
session_dump(sess);
|
||||
|
||||
// check stat
|
||||
|
||||
Reference in New Issue
Block a user