add timeout test case
tcp timeout init (SYN / SYNACK)
tcp timeout handshake
tcp timeout data
tcp timeout half closed (session opening / session active)
tcp timeout time wait
udp timeout data (session opening / session active)
This commit is contained in:
@@ -585,7 +585,7 @@ static void session_manager_update_session_base(struct session_manager *mgr, str
|
|||||||
{
|
{
|
||||||
session_set_type(sess, SESSION_TYPE_TCP);
|
session_set_type(sess, SESSION_TYPE_TCP);
|
||||||
}
|
}
|
||||||
session_set_create_time(sess, timestamp_get_msec());
|
session_set_create_time(sess, timestamp_get_sec());
|
||||||
}
|
}
|
||||||
|
|
||||||
static void session_manager_update_session_packet(struct session_manager *mgr, struct session *sess, const struct packet *pkt, enum session_dir curr_dir)
|
static void session_manager_update_session_packet(struct session_manager *mgr, struct session *sess, const struct packet *pkt, enum session_dir curr_dir)
|
||||||
@@ -609,7 +609,7 @@ static void session_manager_update_session_packet(struct session_manager *mgr, s
|
|||||||
}
|
}
|
||||||
session_set0_cur_pkt(sess, pkt);
|
session_set0_cur_pkt(sess, pkt);
|
||||||
session_set_cur_dir(sess, curr_dir);
|
session_set_cur_dir(sess, curr_dir);
|
||||||
session_set_last_time(sess, timestamp_get_msec());
|
session_set_last_time(sess, timestamp_get_sec());
|
||||||
}
|
}
|
||||||
|
|
||||||
static void session_manager_update_udp_to_opening(struct session_manager *mgr, struct session *sess)
|
static void session_manager_update_udp_to_opening(struct session_manager *mgr, struct session *sess)
|
||||||
@@ -1128,7 +1128,7 @@ struct session *session_manager_get_expired_session(struct session_manager *mgr)
|
|||||||
{
|
{
|
||||||
session_manager_recycle_session(mgr);
|
session_manager_recycle_session(mgr);
|
||||||
|
|
||||||
struct session *sess = session_timer_expire_session(mgr->sess_timer, timestamp_get_msec());
|
struct session *sess = session_timer_expire_session(mgr->sess_timer, timestamp_get_sec());
|
||||||
if (sess)
|
if (sess)
|
||||||
{
|
{
|
||||||
session_run_expirecb(sess);
|
session_run_expirecb(sess);
|
||||||
@@ -1160,44 +1160,22 @@ struct session *session_manager_get_evicted_session(struct session_manager *mgr)
|
|||||||
return sess;
|
return sess;
|
||||||
}
|
}
|
||||||
|
|
||||||
// return interval (seconds) to next required update, return 0 if no session
|
|
||||||
uint64_t session_manager_get_expire_interval(struct session_manager *mgr)
|
uint64_t session_manager_get_expire_interval(struct session_manager *mgr)
|
||||||
{
|
{
|
||||||
return session_timer_next_expire_interval(mgr->sess_timer);
|
return session_timer_next_expire_interval(mgr->sess_timer);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t session_manager_get_session_number(struct session_manager *mgr, enum session_type type, enum session_state state)
|
void session_manager_get_session_counter(struct session_manager *mgr, struct session_counter *out)
|
||||||
{
|
{
|
||||||
if (type == SESSION_TYPE_TCP)
|
out->tcp_sess_num = mgr->tcp_sess_num;
|
||||||
{
|
out->tcp_opening_sess_num = mgr->tcp_opening_sess_num;
|
||||||
switch (state)
|
out->tcp_active_sess_num = mgr->tcp_active_sess_num;
|
||||||
{
|
out->tcp_closing_sess_num = mgr->tcp_closing_sess_num;
|
||||||
case SESSION_STATE_OPENING:
|
|
||||||
return mgr->tcp_opening_sess_num;
|
|
||||||
case SESSION_STATE_ACTIVE:
|
|
||||||
return mgr->tcp_active_sess_num;
|
|
||||||
case SESSION_STATE_CLOSING:
|
|
||||||
return mgr->tcp_closing_sess_num;
|
|
||||||
default:
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (type == SESSION_TYPE_UDP)
|
|
||||||
{
|
|
||||||
switch (state)
|
|
||||||
{
|
|
||||||
case SESSION_STATE_OPENING:
|
|
||||||
return mgr->udp_opening_sess_num;
|
|
||||||
case SESSION_STATE_ACTIVE:
|
|
||||||
return mgr->udp_active_sess_num;
|
|
||||||
case SESSION_STATE_CLOSING:
|
|
||||||
return mgr->udp_closing_sess_num;
|
|
||||||
default:
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
out->udp_sess_num = mgr->udp_sess_num;
|
||||||
|
out->udp_opening_sess_num = mgr->udp_opening_sess_num;
|
||||||
|
out->udp_active_sess_num = mgr->udp_active_sess_num;
|
||||||
|
out->udp_closing_sess_num = mgr->udp_closing_sess_num;
|
||||||
}
|
}
|
||||||
|
|
||||||
void session_manager_print_status(struct session_manager *mgr)
|
void session_manager_print_status(struct session_manager *mgr)
|
||||||
|
|||||||
@@ -65,10 +65,24 @@ struct session *session_manager_lookup_sesssion(struct session_manager *mgr, con
|
|||||||
struct session *session_manager_update_session(struct session_manager *mgr, const struct packet *pkt);
|
struct session *session_manager_update_session(struct session_manager *mgr, const struct packet *pkt);
|
||||||
struct session *session_manager_get_expired_session(struct session_manager *mgr);
|
struct session *session_manager_get_expired_session(struct session_manager *mgr);
|
||||||
struct session *session_manager_get_evicted_session(struct session_manager *mgr);
|
struct session *session_manager_get_evicted_session(struct session_manager *mgr);
|
||||||
// return interval (seconds) to next required update, return 0 if no session
|
// return 0: have already timeout session
|
||||||
|
// return >0: next expire interval
|
||||||
uint64_t session_manager_get_expire_interval(struct session_manager *mgr);
|
uint64_t session_manager_get_expire_interval(struct session_manager *mgr);
|
||||||
uint64_t session_manager_get_session_number(struct session_manager *mgr, enum session_type type, enum session_state state);
|
|
||||||
|
|
||||||
|
struct session_counter
|
||||||
|
{
|
||||||
|
uint64_t tcp_sess_num;
|
||||||
|
uint64_t tcp_opening_sess_num;
|
||||||
|
uint64_t tcp_active_sess_num;
|
||||||
|
uint64_t tcp_closing_sess_num;
|
||||||
|
|
||||||
|
uint64_t udp_sess_num;
|
||||||
|
uint64_t udp_opening_sess_num;
|
||||||
|
uint64_t udp_active_sess_num;
|
||||||
|
uint64_t udp_closing_sess_num;
|
||||||
|
};
|
||||||
|
|
||||||
|
void session_manager_get_session_counter(struct session_manager *mgr, struct session_counter *out);
|
||||||
void session_manager_print_status(struct session_manager *mgr);
|
void session_manager_print_status(struct session_manager *mgr);
|
||||||
|
|
||||||
#ifdef __cpluscplus
|
#ifdef __cpluscplus
|
||||||
|
|||||||
@@ -68,7 +68,6 @@ struct session *session_timer_expire_session(struct session_timer *timer, uint64
|
|||||||
return sess;
|
return sess;
|
||||||
}
|
}
|
||||||
|
|
||||||
// return interval to next required update, return 0 if no timer
|
|
||||||
uint64_t session_timer_next_expire_interval(struct session_timer *timer)
|
uint64_t session_timer_next_expire_interval(struct session_timer *timer)
|
||||||
{
|
{
|
||||||
return timeouts_timeout(timer->timeouts);
|
return timeouts_timeout(timer->timeouts);
|
||||||
|
|||||||
@@ -18,7 +18,8 @@ void session_timer_del_session(struct session_timer *timer, struct session *sess
|
|||||||
* if return session, the session will be removed from timer.
|
* if return session, the session will be removed from timer.
|
||||||
*/
|
*/
|
||||||
struct session *session_timer_expire_session(struct session_timer *timer, uint64_t abs_current_ts);
|
struct session *session_timer_expire_session(struct session_timer *timer, uint64_t abs_current_ts);
|
||||||
// return interval to next required update, return 0 if no timer
|
// return 0: have already timeout session
|
||||||
|
// return >0: next expire interval
|
||||||
uint64_t session_timer_next_expire_interval(struct session_timer *timer);
|
uint64_t session_timer_next_expire_interval(struct session_timer *timer);
|
||||||
|
|
||||||
#ifdef __cpluscplus
|
#ifdef __cpluscplus
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
###############################################################################
|
###############################################################################
|
||||||
# gtest
|
# gtest utils
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
add_executable(gtest_session gtest_session.cpp)
|
add_executable(gtest_session gtest_session.cpp)
|
||||||
@@ -17,26 +17,61 @@ target_link_libraries(gtest_session_timer session_manager gtest)
|
|||||||
add_executable(gtest_session_queue gtest_session_queue.cpp)
|
add_executable(gtest_session_queue gtest_session_queue.cpp)
|
||||||
target_link_libraries(gtest_session_queue session_manager gtest)
|
target_link_libraries(gtest_session_queue session_manager gtest)
|
||||||
|
|
||||||
add_executable(gtest_tcp_init_to_opening gtest_tcp_init_to_opening.cpp)
|
###############################################################################
|
||||||
target_link_libraries(gtest_tcp_init_to_opening session_manager gtest)
|
# gtest state machine (TCP)
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
add_executable(gtest_tcp_opening_to_active gtest_tcp_opening_to_active.cpp)
|
add_executable(gtest_state_tcp_init_to_opening gtest_state_tcp_init_to_opening.cpp)
|
||||||
target_link_libraries(gtest_tcp_opening_to_active session_manager gtest)
|
target_link_libraries(gtest_state_tcp_init_to_opening session_manager gtest)
|
||||||
|
|
||||||
add_executable(gtest_tcp_active_to_closing gtest_tcp_active_to_closing.cpp)
|
add_executable(gtest_state_tcp_opening_to_active gtest_state_tcp_opening_to_active.cpp)
|
||||||
target_link_libraries(gtest_tcp_active_to_closing session_manager gtest)
|
target_link_libraries(gtest_state_tcp_opening_to_active session_manager gtest)
|
||||||
|
|
||||||
add_executable(gtest_tcp_opening_to_closing gtest_tcp_opening_to_closing.cpp)
|
add_executable(gtest_state_tcp_active_to_closing gtest_state_tcp_active_to_closing.cpp)
|
||||||
target_link_libraries(gtest_tcp_opening_to_closing session_manager gtest)
|
target_link_libraries(gtest_state_tcp_active_to_closing session_manager gtest)
|
||||||
|
|
||||||
add_executable(gtest_tcp_init_to_opening_to_active_to_closing_to_closed gtest_tcp_init_to_opening_to_active_to_closing_to_closed.cpp)
|
add_executable(gtest_state_tcp_opening_to_closing gtest_state_tcp_opening_to_closing.cpp)
|
||||||
target_link_libraries(gtest_tcp_init_to_opening_to_active_to_closing_to_closed session_manager gtest)
|
target_link_libraries(gtest_state_tcp_opening_to_closing session_manager gtest)
|
||||||
|
|
||||||
add_executable(gtest_udp_init_to_opening_to_closing gtest_udp_init_to_opening_to_closing.cpp)
|
add_executable(gtest_state_tcp_init_to_opening_to_active_to_closing_to_closed gtest_state_tcp_init_to_opening_to_active_to_closing_to_closed.cpp)
|
||||||
target_link_libraries(gtest_udp_init_to_opening_to_closing session_manager gtest)
|
target_link_libraries(gtest_state_tcp_init_to_opening_to_active_to_closing_to_closed session_manager gtest)
|
||||||
|
|
||||||
add_executable(gtest_udp_init_to_opening_to_active_to_closing gtest_udp_init_to_opening_to_active_to_closing.cpp)
|
###############################################################################
|
||||||
target_link_libraries(gtest_udp_init_to_opening_to_active_to_closing session_manager gtest)
|
# gtest state machine (UDP)
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
add_executable(gtest_state_udp_init_to_opening_to_closing gtest_state_udp_init_to_opening_to_closing.cpp)
|
||||||
|
target_link_libraries(gtest_state_udp_init_to_opening_to_closing session_manager gtest)
|
||||||
|
|
||||||
|
add_executable(gtest_state_udp_init_to_opening_to_active_to_closing gtest_state_udp_init_to_opening_to_active_to_closing.cpp)
|
||||||
|
target_link_libraries(gtest_state_udp_init_to_opening_to_active_to_closing session_manager gtest)
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# gtest timeout (TCP)
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
add_executable(gtest_timeout_tcp_init gtest_timeout_tcp_init.cpp)
|
||||||
|
target_link_libraries(gtest_timeout_tcp_init session_manager gtest)
|
||||||
|
|
||||||
|
add_executable(gtest_timeout_tcp_handshake gtest_timeout_tcp_handshake.cpp)
|
||||||
|
target_link_libraries(gtest_timeout_tcp_handshake session_manager gtest)
|
||||||
|
|
||||||
|
add_executable(gtest_timeout_tcp_data gtest_timeout_tcp_data.cpp)
|
||||||
|
target_link_libraries(gtest_timeout_tcp_data session_manager gtest)
|
||||||
|
|
||||||
|
add_executable(gtest_timeout_tcp_half_closed gtest_timeout_tcp_half_closed.cpp)
|
||||||
|
target_link_libraries(gtest_timeout_tcp_half_closed session_manager gtest)
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# gtest timeout (UDP)
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
add_executable(gtest_timeout_udp_data gtest_timeout_udp_data.cpp)
|
||||||
|
target_link_libraries(gtest_timeout_udp_data session_manager gtest)
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# gtest
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
include(GoogleTest)
|
include(GoogleTest)
|
||||||
gtest_discover_tests(gtest_session)
|
gtest_discover_tests(gtest_session)
|
||||||
@@ -44,10 +79,19 @@ gtest_discover_tests(gtest_session_pool)
|
|||||||
gtest_discover_tests(gtest_session_table)
|
gtest_discover_tests(gtest_session_table)
|
||||||
gtest_discover_tests(gtest_session_timer)
|
gtest_discover_tests(gtest_session_timer)
|
||||||
gtest_discover_tests(gtest_session_queue)
|
gtest_discover_tests(gtest_session_queue)
|
||||||
gtest_discover_tests(gtest_tcp_init_to_opening)
|
|
||||||
gtest_discover_tests(gtest_tcp_opening_to_active)
|
gtest_discover_tests(gtest_state_tcp_init_to_opening)
|
||||||
gtest_discover_tests(gtest_tcp_active_to_closing)
|
gtest_discover_tests(gtest_state_tcp_opening_to_active)
|
||||||
gtest_discover_tests(gtest_tcp_opening_to_closing)
|
gtest_discover_tests(gtest_state_tcp_active_to_closing)
|
||||||
gtest_discover_tests(gtest_tcp_init_to_opening_to_active_to_closing_to_closed)
|
gtest_discover_tests(gtest_state_tcp_opening_to_closing)
|
||||||
gtest_discover_tests(gtest_udp_init_to_opening_to_closing)
|
|
||||||
gtest_discover_tests(gtest_udp_init_to_opening_to_active_to_closing)
|
gtest_discover_tests(gtest_state_tcp_init_to_opening_to_active_to_closing_to_closed)
|
||||||
|
gtest_discover_tests(gtest_state_udp_init_to_opening_to_closing)
|
||||||
|
gtest_discover_tests(gtest_state_udp_init_to_opening_to_active_to_closing)
|
||||||
|
|
||||||
|
gtest_discover_tests(gtest_timeout_tcp_init)
|
||||||
|
gtest_discover_tests(gtest_timeout_tcp_handshake)
|
||||||
|
gtest_discover_tests(gtest_timeout_tcp_data)
|
||||||
|
gtest_discover_tests(gtest_timeout_tcp_half_closed)
|
||||||
|
|
||||||
|
gtest_discover_tests(gtest_timeout_udp_data)
|
||||||
@@ -153,6 +153,47 @@ TEST(SESSION_TIMER, BEFORE_EXPIRE_UPDATE)
|
|||||||
session_timer_destroy(timer);
|
session_timer_destroy(timer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST(SESSION_TIMER, NEXT_EXPIRE_INTERVAL)
|
||||||
|
{
|
||||||
|
struct session sess1;
|
||||||
|
struct session sess2;
|
||||||
|
struct session_timer *timer = session_timer_create();
|
||||||
|
EXPECT_TRUE(timer != NULL);
|
||||||
|
|
||||||
|
session_init(&sess1);
|
||||||
|
session_init(&sess2);
|
||||||
|
session_set_id(&sess1, 1);
|
||||||
|
session_set_id(&sess2, 2);
|
||||||
|
session_set_expirecb(&sess1, session_expire, NULL, 1000);
|
||||||
|
session_set_expirecb(&sess2, session_expire, NULL, 1000);
|
||||||
|
|
||||||
|
EXPECT_TRUE(session_timer_next_expire_interval(timer) == UINT64_MAX);
|
||||||
|
|
||||||
|
session_timer_add_session(timer, &sess1);
|
||||||
|
session_timer_add_session(timer, &sess2);
|
||||||
|
EXPECT_TRUE(session_timer_next_expire_interval(timer) < UINT64_MAX);
|
||||||
|
|
||||||
|
EXPECT_TRUE(session_timer_expire_session(timer, 900) == NULL);
|
||||||
|
EXPECT_TRUE(session_timer_next_expire_interval(timer) <= 1000 - 900);
|
||||||
|
|
||||||
|
EXPECT_TRUE(session_timer_expire_session(timer, 950) == NULL);
|
||||||
|
EXPECT_TRUE(session_timer_next_expire_interval(timer) <= 1000 - 950);
|
||||||
|
|
||||||
|
EXPECT_TRUE(session_timer_expire_session(timer, 980) == NULL);
|
||||||
|
EXPECT_TRUE(session_timer_next_expire_interval(timer) <= 1000 - 980);
|
||||||
|
|
||||||
|
EXPECT_TRUE(session_timer_expire_session(timer, 990) == NULL);
|
||||||
|
EXPECT_TRUE(session_timer_next_expire_interval(timer) <= 1000 - 990);
|
||||||
|
|
||||||
|
EXPECT_TRUE(session_timer_expire_session(timer, 1010));
|
||||||
|
EXPECT_TRUE(session_timer_next_expire_interval(timer) == 0);
|
||||||
|
|
||||||
|
EXPECT_TRUE(session_timer_expire_session(timer, 1010));
|
||||||
|
EXPECT_TRUE(session_timer_next_expire_interval(timer) == UINT64_MAX);
|
||||||
|
|
||||||
|
session_timer_destroy(timer);
|
||||||
|
}
|
||||||
|
|
||||||
int main(int argc, char **argv)
|
int main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
::testing::InitGoogleTest(&argc, argv);
|
::testing::InitGoogleTest(&argc, argv);
|
||||||
|
|||||||
@@ -26,8 +26,8 @@ static void build_active_tcp_session(struct session_manager *mgr, struct session
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
||||||
@@ -37,7 +37,7 @@ static void build_active_tcp_session(struct session_manager *mgr, struct session
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -61,8 +61,8 @@ static void build_active_tcp_session(struct session_manager *mgr, struct session
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED));
|
||||||
@@ -71,7 +71,7 @@ static void build_active_tcp_session(struct session_manager *mgr, struct session
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -116,8 +116,8 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_FIN_FIN)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_C2S_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_C2S_FIN_RECVED));
|
||||||
@@ -126,7 +126,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_FIN_FIN)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -150,8 +150,8 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_FIN_FIN)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_C2S_FIN_RECVED | TCP_S2C_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_C2S_FIN_RECVED | TCP_S2C_FIN_RECVED));
|
||||||
@@ -160,9 +160,9 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_FIN_FIN)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 1, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_CLIENT_FIN);
|
__session_manager_wait(mgr, CLOSING_BY_CLIENT_FIN);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -214,8 +214,8 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_RST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_C2S_RST_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_C2S_RST_RECVED));
|
||||||
@@ -224,9 +224,9 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_RST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 1, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_CLIENT_RST);
|
__session_manager_wait(mgr, CLOSING_BY_CLIENT_RST);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -278,8 +278,8 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_RST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_RST_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_RST_RECVED));
|
||||||
@@ -288,9 +288,9 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_RST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 1, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_SERVER_RST);
|
__session_manager_wait(mgr, CLOSING_BY_SERVER_RST);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -314,9 +314,9 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_DATA_TIMEOUT)
|
|||||||
// C2S SYN Packet & C2S DATA Packet
|
// C2S SYN Packet & C2S DATA Packet
|
||||||
build_active_tcp_session(mgr, sess);
|
build_active_tcp_session(mgr, sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -361,8 +361,8 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_HALF_CLOSED_TIMEOUT)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_C2S_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_C2S_FIN_RECVED));
|
||||||
@@ -371,9 +371,9 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_HALF_CLOSED_TIMEOUT)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_CLIENT_FIN);
|
__session_manager_wait(mgr, CLOSING_BY_CLIENT_FIN);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -418,8 +418,8 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_HALF_CLOSED_TIMEOUT)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_FIN_RECVED));
|
||||||
@@ -428,9 +428,9 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_HALF_CLOSED_TIMEOUT)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_SERVER_FIN);
|
__session_manager_wait(mgr, CLOSING_BY_SERVER_FIN);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -38,8 +38,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
||||||
@@ -49,9 +49,9 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -93,8 +93,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYNACK_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYNACK_RECVED);
|
||||||
@@ -104,9 +104,9 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -148,8 +148,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
||||||
@@ -159,7 +159,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -183,8 +183,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED));
|
||||||
@@ -194,9 +194,9 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -238,8 +238,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
||||||
@@ -249,7 +249,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -273,8 +273,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED));
|
||||||
@@ -284,7 +284,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -308,8 +308,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED));
|
||||||
@@ -318,9 +318,9 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -364,8 +364,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
||||||
@@ -375,7 +375,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -405,8 +405,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
||||||
@@ -416,9 +416,9 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -462,8 +462,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYNACK_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYNACK_RECVED);
|
||||||
@@ -473,7 +473,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -503,8 +503,8 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYNACK_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYNACK_RECVED);
|
||||||
@@ -514,9 +514,9 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -558,8 +558,8 @@ TEST(TCP_INIT_TO_OPENING, BY_C2S_ASMMETRIC)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
||||||
@@ -569,7 +569,7 @@ TEST(TCP_INIT_TO_OPENING, BY_C2S_ASMMETRIC)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -593,8 +593,8 @@ TEST(TCP_INIT_TO_OPENING, BY_C2S_ASMMETRIC)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED));
|
||||||
@@ -604,9 +604,9 @@ TEST(TCP_INIT_TO_OPENING, BY_C2S_ASMMETRIC)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -648,8 +648,8 @@ TEST(TCP_INIT_TO_OPENING, BY_S2C_ASMMETRIC)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYNACK_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYNACK_RECVED);
|
||||||
@@ -659,7 +659,7 @@ TEST(TCP_INIT_TO_OPENING, BY_S2C_ASMMETRIC)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -683,8 +683,8 @@ TEST(TCP_INIT_TO_OPENING, BY_S2C_ASMMETRIC)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYNACK_RECVED | TCP_S2C_ACK_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYNACK_RECVED | TCP_S2C_ACK_RECVED));
|
||||||
@@ -694,9 +694,9 @@ TEST(TCP_INIT_TO_OPENING, BY_S2C_ASMMETRIC)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -35,8 +35,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
||||||
@@ -46,7 +46,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -71,8 +71,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED));
|
||||||
@@ -81,7 +81,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -106,8 +106,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED));
|
||||||
@@ -116,7 +116,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -141,8 +141,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED));
|
||||||
@@ -151,7 +151,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -176,8 +176,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED));
|
||||||
@@ -186,7 +186,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -211,8 +211,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED));
|
||||||
@@ -221,7 +221,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -246,8 +246,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354 + 385);
|
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_c2s_packets(sess) == 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED));
|
||||||
@@ -256,7 +256,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -281,8 +281,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354 + 385);
|
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_c2s_packets(sess) == 1 + 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED));
|
||||||
@@ -291,7 +291,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -316,8 +316,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354 + 385);
|
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_c2s_packets(sess) == 1 + 1 + 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED | TCP_C2S_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED | TCP_C2S_FIN_RECVED));
|
||||||
@@ -326,7 +326,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -351,8 +351,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354 + 385 + 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_c2s_packets(sess) == 1 + 1 + 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1 + 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1 + 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED | TCP_C2S_FIN_RECVED | TCP_S2C_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED | TCP_C2S_FIN_RECVED | TCP_S2C_FIN_RECVED));
|
||||||
@@ -361,7 +361,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 1, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -386,8 +386,8 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 66 + 1354 + 385 + 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_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_s2c_packets(sess) == 1 + 1 + 1 + 1 + 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED | TCP_C2S_FIN_RECVED | TCP_S2C_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_DATA_RECVED | TCP_S2C_DATA_RECVED | TCP_C2S_FIN_RECVED | TCP_S2C_FIN_RECVED));
|
||||||
@@ -396,9 +396,9 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 1, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_CLIENT_FIN);
|
__session_manager_wait(mgr, CLOSING_BY_CLIENT_FIN);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -38,8 +38,8 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYN_C2S_DATA)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
||||||
@@ -49,7 +49,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYN_C2S_DATA)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -73,8 +73,8 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYN_C2S_DATA)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_DATA_RECVED));
|
||||||
@@ -83,9 +83,9 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYN_C2S_DATA)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -127,8 +127,8 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYNACK_S2C_DATA)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYNACK_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYNACK_RECVED);
|
||||||
@@ -138,7 +138,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYNACK_S2C_DATA)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -162,8 +162,8 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYNACK_S2C_DATA)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 1354);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74 + 1354);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYNACK_RECVED | TCP_S2C_ACK_RECVED | TCP_S2C_DATA_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYNACK_RECVED | TCP_S2C_ACK_RECVED | TCP_S2C_DATA_RECVED));
|
||||||
@@ -172,9 +172,9 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYNACK_S2C_DATA)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 1, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -26,8 +26,8 @@ static void build_opening_tcp_session(struct session_manager *mgr, struct sessio
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
EXPECT_TRUE(session_get_tcp_state(sess) == TCP_SYN_RECVED);
|
||||||
@@ -37,7 +37,7 @@ static void build_opening_tcp_session(struct session_manager *mgr, struct sessio
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -82,8 +82,8 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_FIN_RECVED));
|
||||||
@@ -92,7 +92,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -116,8 +116,8 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_FIN_RECVED | TCP_S2C_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_S2C_ACK_RECVED | TCP_C2S_FIN_RECVED | TCP_S2C_FIN_RECVED));
|
||||||
@@ -126,9 +126,9 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 1, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_CLIENT_FIN);
|
__session_manager_wait(mgr, CLOSING_BY_CLIENT_FIN);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -180,8 +180,8 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_RST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_RST_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_RST_RECVED));
|
||||||
@@ -190,9 +190,9 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_RST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 1, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_CLIENT_RST);
|
__session_manager_wait(mgr, CLOSING_BY_CLIENT_RST);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -244,8 +244,8 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_RST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_S2C_RST_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_S2C_RST_RECVED));
|
||||||
@@ -254,9 +254,9 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_RST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 1, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_SERVER_RST);
|
__session_manager_wait(mgr, CLOSING_BY_SERVER_RST);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -280,8 +280,9 @@ TEST(TCP_OPENING_TO_CLOSING, BY_INIT_TIMEOUT)
|
|||||||
// C2S SYN Packet
|
// C2S SYN Packet
|
||||||
build_opening_tcp_session(mgr, sess);
|
build_opening_tcp_session(mgr, sess);
|
||||||
|
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -326,8 +327,8 @@ TEST(TCP_OPENING_TO_CLOSING, BY_HANDSHAKE_TIMEOUT)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED));
|
||||||
@@ -337,9 +338,9 @@ TEST(TCP_OPENING_TO_CLOSING, BY_HANDSHAKE_TIMEOUT)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -384,8 +385,8 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED));
|
||||||
@@ -395,7 +396,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -419,8 +420,8 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 74);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_SYNACK_RECVED | TCP_C2S_ACK_RECVED));
|
||||||
@@ -429,9 +430,9 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -476,8 +477,8 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_HALF_CLOSED_TIMEOUT)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1 + 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_C2S_ACK_RECVED | TCP_C2S_FIN_RECVED));
|
||||||
@@ -486,9 +487,9 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_HALF_CLOSED_TIMEOUT)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_CLIENT_FIN);
|
__session_manager_wait(mgr, CLOSING_BY_CLIENT_FIN);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -533,8 +534,8 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_HALF_CLOSED_TIMEOUT)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 66);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_S2C_ACK_RECVED | TCP_S2C_FIN_RECVED));
|
EXPECT_TRUE(session_get_tcp_state(sess) == (TCP_SYN_RECVED | TCP_S2C_ACK_RECVED | TCP_S2C_FIN_RECVED));
|
||||||
@@ -543,9 +544,9 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_HALF_CLOSED_TIMEOUT)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 1, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_SERVER_FIN);
|
__session_manager_wait(mgr, CLOSING_BY_SERVER_FIN);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -42,8 +42,8 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_udp_state(sess) == UDP_C2S_RECVED);
|
EXPECT_TRUE(session_get_udp_state(sess) == UDP_C2S_RECVED);
|
||||||
@@ -53,7 +53,7 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 0, 1, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 1, 0, 0);
|
||||||
|
|
||||||
sleep(1);
|
sleep(1);
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
@@ -77,8 +77,8 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 550);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 550);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) < timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_udp_state(sess) == (UDP_C2S_RECVED | UDP_S2C_RECVED));
|
EXPECT_TRUE(session_get_udp_state(sess) == (UDP_C2S_RECVED | UDP_S2C_RECVED));
|
||||||
@@ -87,9 +87,9 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 1, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 1, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -40,8 +40,8 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_C2S)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_C2S);
|
||||||
EXPECT_TRUE(session_get_udp_state(sess) == UDP_C2S_RECVED);
|
EXPECT_TRUE(session_get_udp_state(sess) == UDP_C2S_RECVED);
|
||||||
@@ -51,9 +51,9 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_C2S)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 0, 1, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 1, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
@@ -97,8 +97,8 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_S2C)
|
|||||||
EXPECT_TRUE(session_get_s2c_bytes(sess) == 550);
|
EXPECT_TRUE(session_get_s2c_bytes(sess) == 550);
|
||||||
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
EXPECT_TRUE(session_get_c2s_packets(sess) == 0);
|
||||||
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
EXPECT_TRUE(session_get_s2c_packets(sess) == 1);
|
||||||
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_create_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_msec());
|
EXPECT_TRUE(session_get_last_time(sess) == timestamp_get_sec());
|
||||||
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
EXPECT_TRUE(session_get0_cur_pkt(sess) == &pkt);
|
||||||
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
EXPECT_TRUE(session_get_cur_dir(sess) == SESSION_DIR_S2C);
|
||||||
EXPECT_TRUE(session_get_udp_state(sess) == UDP_S2C_RECVED);
|
EXPECT_TRUE(session_get_udp_state(sess) == UDP_S2C_RECVED);
|
||||||
@@ -108,9 +108,9 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_S2C)
|
|||||||
|
|
||||||
__session_dispatch(sess);
|
__session_dispatch(sess);
|
||||||
|
|
||||||
__session_manager_count(mgr, 0, 0, 0, 1, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 1, 0, 0);
|
||||||
__session_manager_dispatch(mgr, CLOSING_BY_TIMEOUT);
|
__session_manager_wait(mgr, CLOSING_BY_TIMEOUT);
|
||||||
__session_manager_count(mgr, 0, 0, 0, 0, 0, 0);
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
session_manager_destroy(mgr);
|
session_manager_destroy(mgr);
|
||||||
}
|
}
|
||||||
44
src/session/test/gtest_timeout_tcp_data.cpp
Normal file
44
src/session/test/gtest_timeout_tcp_data.cpp
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
#include "test_utils.h"
|
||||||
|
|
||||||
|
#if 1
|
||||||
|
TEST(TIMEOUT, TCP_TIMEOUT_DATA)
|
||||||
|
{
|
||||||
|
struct packet pkt;
|
||||||
|
struct session *sess = NULL;
|
||||||
|
struct session_manager *mgr = NULL;
|
||||||
|
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
mgr = session_manager_create(&config);
|
||||||
|
EXPECT_TRUE(mgr != NULL);
|
||||||
|
|
||||||
|
// C2S SYN Packet
|
||||||
|
printf("=> packet parse: TCP C2S SYN packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)tcp_pkt1_c2s_syn, sizeof(tcp_pkt1_c2s_syn));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
// C2S DATA Packet
|
||||||
|
printf("=> packet parse: TCP C2S DATA packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)tcp_pkt4_c2s_http_req, sizeof(tcp_pkt4_c2s_http_req));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
__session_manager_check_tcp_timeout_data(mgr, &config);
|
||||||
|
__session_manager_check_tcp_timeout_time_wait(mgr, &config);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
session_manager_destroy(mgr);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int main(int argc, char **argv)
|
||||||
|
{
|
||||||
|
::testing::InitGoogleTest(&argc, argv);
|
||||||
|
return RUN_ALL_TESTS();
|
||||||
|
}
|
||||||
88
src/session/test/gtest_timeout_tcp_half_closed.cpp
Normal file
88
src/session/test/gtest_timeout_tcp_half_closed.cpp
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
#include "test_utils.h"
|
||||||
|
|
||||||
|
#if 1
|
||||||
|
TEST(TIMEOUT, TCP_TIMEOUT_HALF_CLOSED1)
|
||||||
|
{
|
||||||
|
struct packet pkt;
|
||||||
|
struct session *sess = NULL;
|
||||||
|
struct session_manager *mgr = NULL;
|
||||||
|
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
mgr = session_manager_create(&config);
|
||||||
|
EXPECT_TRUE(mgr != NULL);
|
||||||
|
|
||||||
|
// C2S SYN Packet
|
||||||
|
printf("=> packet parse: TCP C2S SYN packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)tcp_pkt1_c2s_syn, sizeof(tcp_pkt1_c2s_syn));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
// C2S FIN Packet
|
||||||
|
printf("=> packet parse: TCP C2S FIN packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)tcp_pkt9_c2s_fin, sizeof(tcp_pkt9_c2s_fin));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
__session_manager_check_tcp_timeout_half_closed(mgr, &config, SESSION_STATE_OPENING);
|
||||||
|
__session_manager_check_tcp_timeout_time_wait(mgr, &config);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
session_manager_destroy(mgr);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if 1
|
||||||
|
TEST(TIMEOUT, TCP_TIMEOUT_HALF_CLOSED2)
|
||||||
|
{
|
||||||
|
struct packet pkt;
|
||||||
|
struct session *sess = NULL;
|
||||||
|
struct session_manager *mgr = NULL;
|
||||||
|
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
mgr = session_manager_create(&config);
|
||||||
|
EXPECT_TRUE(mgr != NULL);
|
||||||
|
|
||||||
|
// C2S SYN Packet
|
||||||
|
printf("=> packet parse: TCP C2S SYN packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)tcp_pkt1_c2s_syn, sizeof(tcp_pkt1_c2s_syn));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
// C2S DATA Packet
|
||||||
|
printf("=> packet parse: TCP C2S DATA packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)tcp_pkt4_c2s_http_req, sizeof(tcp_pkt4_c2s_http_req));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
// C2S FIN Packet
|
||||||
|
printf("=> packet parse: TCP C2S FIN packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)tcp_pkt9_c2s_fin, sizeof(tcp_pkt9_c2s_fin));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
__session_manager_check_tcp_timeout_half_closed(mgr, &config, SESSION_STATE_ACTIVE);
|
||||||
|
__session_manager_check_tcp_timeout_time_wait(mgr, &config);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
session_manager_destroy(mgr);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int main(int argc, char **argv)
|
||||||
|
{
|
||||||
|
::testing::InitGoogleTest(&argc, argv);
|
||||||
|
return RUN_ALL_TESTS();
|
||||||
|
}
|
||||||
37
src/session/test/gtest_timeout_tcp_handshake.cpp
Normal file
37
src/session/test/gtest_timeout_tcp_handshake.cpp
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
#include "test_utils.h"
|
||||||
|
|
||||||
|
#if 1
|
||||||
|
TEST(TIMEOUT, TCP_TIMEOUT_HANDSHAKE)
|
||||||
|
{
|
||||||
|
struct packet pkt;
|
||||||
|
struct session *sess = NULL;
|
||||||
|
struct session_manager *mgr = NULL;
|
||||||
|
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
mgr = session_manager_create(&config);
|
||||||
|
EXPECT_TRUE(mgr != NULL);
|
||||||
|
|
||||||
|
// SYNACK Packet
|
||||||
|
printf("=> packet parse: TCP S2C SYNACK packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)tcp_pkt2_s2c_syn_ack, sizeof(tcp_pkt2_s2c_syn_ack));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
__session_manager_check_tcp_timeout_handshake(mgr, &config);
|
||||||
|
__session_manager_check_tcp_timeout_time_wait(mgr, &config);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
session_manager_destroy(mgr);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int main(int argc, char **argv)
|
||||||
|
{
|
||||||
|
::testing::InitGoogleTest(&argc, argv);
|
||||||
|
return RUN_ALL_TESTS();
|
||||||
|
}
|
||||||
67
src/session/test/gtest_timeout_tcp_init.cpp
Normal file
67
src/session/test/gtest_timeout_tcp_init.cpp
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
#include "test_utils.h"
|
||||||
|
|
||||||
|
#if 1
|
||||||
|
TEST(TIMEOUT, TCP_TIMEOUT_INIT1)
|
||||||
|
{
|
||||||
|
struct packet pkt;
|
||||||
|
struct session *sess = NULL;
|
||||||
|
struct session_manager *mgr = NULL;
|
||||||
|
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
mgr = session_manager_create(&config);
|
||||||
|
EXPECT_TRUE(mgr != NULL);
|
||||||
|
|
||||||
|
// C2S SYN Packet
|
||||||
|
printf("=> packet parse: TCP C2S SYN packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)tcp_pkt1_c2s_syn, sizeof(tcp_pkt1_c2s_syn));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
__session_manager_check_tcp_timeout_init(mgr, &config);
|
||||||
|
__session_manager_check_tcp_timeout_time_wait(mgr, &config);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
session_manager_destroy(mgr);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if 1
|
||||||
|
TEST(TIMEOUT, TCP_TIMEOUT_INIT2)
|
||||||
|
{
|
||||||
|
struct packet pkt;
|
||||||
|
struct session *sess = NULL;
|
||||||
|
struct session_manager *mgr = NULL;
|
||||||
|
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
mgr = session_manager_create(&config);
|
||||||
|
EXPECT_TRUE(mgr != NULL);
|
||||||
|
|
||||||
|
// S2C SYNACK Packet
|
||||||
|
printf("=> packet parse: TCP S2C SYNACK packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)tcp_pkt2_s2c_syn_ack, sizeof(tcp_pkt2_s2c_syn_ack));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
__session_manager_check_tcp_timeout_init(mgr, &config);
|
||||||
|
__session_manager_check_tcp_timeout_time_wait(mgr, &config);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
session_manager_destroy(mgr);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int main(int argc, char **argv)
|
||||||
|
{
|
||||||
|
::testing::InitGoogleTest(&argc, argv);
|
||||||
|
return RUN_ALL_TESTS();
|
||||||
|
}
|
||||||
74
src/session/test/gtest_timeout_udp_data.cpp
Normal file
74
src/session/test/gtest_timeout_udp_data.cpp
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
#include "test_utils.h"
|
||||||
|
|
||||||
|
#if 1
|
||||||
|
TEST(TIMEOUT, UDP_TIMEOUT_DATA1)
|
||||||
|
{
|
||||||
|
struct packet pkt;
|
||||||
|
struct session *sess = NULL;
|
||||||
|
struct session_manager *mgr = NULL;
|
||||||
|
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
mgr = session_manager_create(&config);
|
||||||
|
EXPECT_TRUE(mgr != NULL);
|
||||||
|
|
||||||
|
// C2S REQ Packet
|
||||||
|
printf("=> packet parse: UDP C2S REQ packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)udp_pkt1_dns_req, sizeof(udp_pkt1_dns_req));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 1, 0, 0);
|
||||||
|
|
||||||
|
__session_manager_check_udp_timeout_data(mgr, &config, SESSION_STATE_OPENING);
|
||||||
|
|
||||||
|
EXPECT_TRUE(session_manager_get_expired_session(mgr) == NULL);
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
session_manager_destroy(mgr);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if 1
|
||||||
|
TEST(TIMEOUT, UDP_TIMEOUT_DATA2)
|
||||||
|
{
|
||||||
|
struct packet pkt;
|
||||||
|
struct session *sess = NULL;
|
||||||
|
struct session_manager *mgr = NULL;
|
||||||
|
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
mgr = session_manager_create(&config);
|
||||||
|
EXPECT_TRUE(mgr != NULL);
|
||||||
|
|
||||||
|
// C2S REQ Packet
|
||||||
|
printf("=> packet parse: UDP C2S REQ packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)udp_pkt1_dns_req, sizeof(udp_pkt1_dns_req));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
// S2C RESP Packet
|
||||||
|
printf("=> packet parse: UDP S2C RESP packet\n");
|
||||||
|
packet_parse(&pkt, (const char *)udp_pkt2_dns_resp, sizeof(udp_pkt2_dns_resp));
|
||||||
|
printf("<= packet parse\n\n");
|
||||||
|
sess = session_manager_update_session(mgr, &pkt);
|
||||||
|
EXPECT_TRUE(sess);
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 1, 0);
|
||||||
|
|
||||||
|
__session_manager_check_udp_timeout_data(mgr, &config, SESSION_STATE_ACTIVE);
|
||||||
|
|
||||||
|
EXPECT_TRUE(session_manager_get_expired_session(mgr) == NULL);
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
|
session_manager_destroy(mgr);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int main(int argc, char **argv)
|
||||||
|
{
|
||||||
|
::testing::InitGoogleTest(&argc, argv);
|
||||||
|
return RUN_ALL_TESTS();
|
||||||
|
}
|
||||||
@@ -29,7 +29,7 @@ struct session_manager_config config = {
|
|||||||
.tcp_timeout_discard = 2,
|
.tcp_timeout_discard = 2,
|
||||||
|
|
||||||
// udp timeout
|
// udp timeout
|
||||||
.udp_timeout_data = 1,
|
.udp_timeout_data = 2,
|
||||||
|
|
||||||
// tcp duplicate packet filter
|
// tcp duplicate packet filter
|
||||||
.tcp_dupkt_filter_enable = 1,
|
.tcp_dupkt_filter_enable = 1,
|
||||||
@@ -44,7 +44,7 @@ struct session_manager_config config = {
|
|||||||
.udp_eviction_filter_error_rate = 0.0001,
|
.udp_eviction_filter_error_rate = 0.0001,
|
||||||
};
|
};
|
||||||
|
|
||||||
static void __session_dispatch(struct session *sess)
|
__attribute__((unused)) static void __session_dispatch(struct session *sess)
|
||||||
{
|
{
|
||||||
if (sess == NULL)
|
if (sess == NULL)
|
||||||
{
|
{
|
||||||
@@ -61,10 +61,10 @@ static void __session_dispatch(struct session *sess)
|
|||||||
session_set_cur_dir(sess, SESSION_DIR_NONE);
|
session_set_cur_dir(sess, SESSION_DIR_NONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __session_manager_dispatch(struct session_manager *mgr, enum closing_reasion reason)
|
__attribute__((unused)) static void __session_manager_wait(struct session_manager *mgr, enum closing_reasion reason)
|
||||||
{
|
{
|
||||||
struct session *sess;
|
struct session *sess;
|
||||||
for (int i = 0; i < 3; i++)
|
for (int i = 0; i < 5; i++)
|
||||||
{
|
{
|
||||||
timestamp_update();
|
timestamp_update();
|
||||||
sess = session_manager_get_expired_session(mgr);
|
sess = session_manager_get_expired_session(mgr);
|
||||||
@@ -83,15 +83,257 @@ static void __session_manager_dispatch(struct session_manager *mgr, enum closing
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __session_manager_count(struct session_manager *mgr, uint64_t tcp_opening_num, uint64_t tcp_active_num, uint64_t tcp_closing_num, uint64_t udp_opening_num, uint64_t udp_active_num, uint64_t udp_closing_num)
|
__attribute__((unused)) static void __session_manager_check_counter(struct session_manager *mgr,
|
||||||
|
uint64_t tcp_opening_sess_num, uint64_t tcp_active_sess_num, uint64_t tcp_closing_sess_num,
|
||||||
|
uint64_t udp_opening_sess_num, uint64_t udp_active_sess_num, uint64_t udp_closing_sess_num)
|
||||||
{
|
{
|
||||||
EXPECT_TRUE(session_manager_get_session_number(mgr, SESSION_TYPE_TCP, SESSION_STATE_OPENING) == tcp_opening_num);
|
struct session_counter counter;
|
||||||
EXPECT_TRUE(session_manager_get_session_number(mgr, SESSION_TYPE_TCP, SESSION_STATE_ACTIVE) == tcp_active_num);
|
session_manager_get_session_counter(mgr, &counter);
|
||||||
EXPECT_TRUE(session_manager_get_session_number(mgr, SESSION_TYPE_TCP, SESSION_STATE_CLOSING) == tcp_closing_num);
|
|
||||||
|
|
||||||
EXPECT_TRUE(session_manager_get_session_number(mgr, SESSION_TYPE_UDP, SESSION_STATE_OPENING) == udp_opening_num);
|
EXPECT_TRUE(counter.tcp_sess_num == tcp_opening_sess_num + tcp_active_sess_num + tcp_closing_sess_num);
|
||||||
EXPECT_TRUE(session_manager_get_session_number(mgr, SESSION_TYPE_UDP, SESSION_STATE_ACTIVE) == udp_active_num);
|
EXPECT_TRUE(counter.tcp_opening_sess_num == tcp_opening_sess_num);
|
||||||
EXPECT_TRUE(session_manager_get_session_number(mgr, SESSION_TYPE_UDP, SESSION_STATE_CLOSING) == udp_closing_num);
|
EXPECT_TRUE(counter.tcp_active_sess_num == tcp_active_sess_num);
|
||||||
|
EXPECT_TRUE(counter.tcp_closing_sess_num == tcp_closing_sess_num);
|
||||||
|
|
||||||
|
EXPECT_TRUE(counter.udp_sess_num == udp_opening_sess_num + udp_active_sess_num + udp_closing_sess_num);
|
||||||
|
EXPECT_TRUE(counter.udp_opening_sess_num == udp_opening_sess_num);
|
||||||
|
EXPECT_TRUE(counter.udp_active_sess_num == udp_active_sess_num);
|
||||||
|
EXPECT_TRUE(counter.udp_closing_sess_num == udp_closing_sess_num);
|
||||||
|
}
|
||||||
|
|
||||||
|
__attribute__((unused)) static void __session_manager_check_tcp_timeout_init(struct session_manager *mgr, struct session_manager_config *config)
|
||||||
|
{
|
||||||
|
struct session *sess;
|
||||||
|
uint64_t interval;
|
||||||
|
uint64_t timeout_time = timestamp_get_sec() + config->tcp_timeout_init;
|
||||||
|
printf("\n=> tcp_timeout_init\n");
|
||||||
|
for (uint64_t i = 0; i <= config->tcp_timeout_init; i++)
|
||||||
|
{
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
sess = session_manager_get_expired_session(mgr);
|
||||||
|
interval = session_manager_get_expire_interval(mgr);
|
||||||
|
|
||||||
|
if (i == config->tcp_timeout_init)
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, session expired\n",
|
||||||
|
timeout_time, timestamp_get_sec());
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
|
EXPECT_TRUE(sess != NULL);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, interval : %lu, session not expire\n",
|
||||||
|
timeout_time, timestamp_get_sec(), interval);
|
||||||
|
|
||||||
|
EXPECT_TRUE(interval <= config->tcp_timeout_init);
|
||||||
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
EXPECT_TRUE(sess == NULL);
|
||||||
|
}
|
||||||
|
sleep(1);
|
||||||
|
}
|
||||||
|
printf("<= tcp_timeout_init\n\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
__attribute__((unused)) static void __session_manager_check_tcp_timeout_handshake(struct session_manager *mgr, struct session_manager_config *config)
|
||||||
|
{
|
||||||
|
struct session *sess;
|
||||||
|
uint64_t interval;
|
||||||
|
uint64_t timeout_time = timestamp_get_sec() + config->tcp_timeout_handshake;
|
||||||
|
printf("\n=> tcp_timeout_handshake\n");
|
||||||
|
for (uint64_t i = 0; i <= config->tcp_timeout_handshake; i++)
|
||||||
|
{
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
sess = session_manager_get_expired_session(mgr);
|
||||||
|
interval = session_manager_get_expire_interval(mgr);
|
||||||
|
|
||||||
|
if (i == config->tcp_timeout_handshake)
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, session expired\n",
|
||||||
|
timeout_time, timestamp_get_sec());
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
|
EXPECT_TRUE(sess != NULL);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, interval : %lu, session not expire\n",
|
||||||
|
timeout_time, timestamp_get_sec(), interval);
|
||||||
|
|
||||||
|
EXPECT_TRUE(interval <= config->tcp_timeout_handshake);
|
||||||
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
EXPECT_TRUE(sess == NULL);
|
||||||
|
}
|
||||||
|
sleep(1);
|
||||||
|
}
|
||||||
|
printf("<= tcp_timeout_handshake\n\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
__attribute__((unused)) static void __session_manager_check_tcp_timeout_data(struct session_manager *mgr, struct session_manager_config *config)
|
||||||
|
{
|
||||||
|
struct session *sess;
|
||||||
|
uint64_t interval;
|
||||||
|
uint64_t timeout_time = timestamp_get_sec() + config->tcp_timeout_data;
|
||||||
|
printf("\n=> tcp_timeout_data\n");
|
||||||
|
for (uint64_t i = 0; i <= config->tcp_timeout_data; i++)
|
||||||
|
{
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
sess = session_manager_get_expired_session(mgr);
|
||||||
|
interval = session_manager_get_expire_interval(mgr);
|
||||||
|
|
||||||
|
if (i == config->tcp_timeout_data)
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, session expired\n",
|
||||||
|
timeout_time, timestamp_get_sec());
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
|
EXPECT_TRUE(sess != NULL);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, interval : %lu, session not expire\n",
|
||||||
|
timeout_time, timestamp_get_sec(), interval);
|
||||||
|
|
||||||
|
EXPECT_TRUE(interval <= config->tcp_timeout_data);
|
||||||
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
EXPECT_TRUE(sess == NULL);
|
||||||
|
}
|
||||||
|
sleep(1);
|
||||||
|
}
|
||||||
|
printf("<= tcp_timeout_data\n\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
__attribute__((unused)) static void __session_manager_check_tcp_timeout_half_closed(struct session_manager *mgr, struct session_manager_config *config, enum session_state curr_state)
|
||||||
|
{
|
||||||
|
EXPECT_TRUE(curr_state == SESSION_STATE_OPENING || curr_state == SESSION_STATE_ACTIVE);
|
||||||
|
|
||||||
|
struct session *sess;
|
||||||
|
uint64_t interval;
|
||||||
|
uint64_t timeout_time = timestamp_get_sec() + config->tcp_timeout_half_closed;
|
||||||
|
printf("\n=> tcp_timeout_half_closed\n");
|
||||||
|
for (uint64_t i = 0; i <= config->tcp_timeout_half_closed; i++)
|
||||||
|
{
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
sess = session_manager_get_expired_session(mgr);
|
||||||
|
interval = session_manager_get_expire_interval(mgr);
|
||||||
|
|
||||||
|
if (i == config->tcp_timeout_half_closed)
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, session expired\n",
|
||||||
|
timeout_time, timestamp_get_sec());
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
|
EXPECT_TRUE(sess != NULL);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, interval : %lu, session not expire\n",
|
||||||
|
timeout_time, timestamp_get_sec(), interval);
|
||||||
|
|
||||||
|
EXPECT_TRUE(interval <= config->tcp_timeout_half_closed);
|
||||||
|
if (curr_state == SESSION_STATE_OPENING)
|
||||||
|
{
|
||||||
|
__session_manager_check_counter(mgr, 1, 0, 0, 0, 0, 0);
|
||||||
|
}
|
||||||
|
if (curr_state == SESSION_STATE_ACTIVE)
|
||||||
|
{
|
||||||
|
__session_manager_check_counter(mgr, 0, 1, 0, 0, 0, 0);
|
||||||
|
}
|
||||||
|
EXPECT_TRUE(sess == NULL);
|
||||||
|
}
|
||||||
|
sleep(1);
|
||||||
|
}
|
||||||
|
printf("<= tcp_timeout_half_closed\n\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
__attribute__((unused)) static void __session_manager_check_tcp_timeout_time_wait(struct session_manager *mgr, struct session_manager_config *config)
|
||||||
|
{
|
||||||
|
struct session *sess;
|
||||||
|
uint64_t interval;
|
||||||
|
uint64_t timeout_time = timestamp_get_sec() + config->tcp_timeout_time_wait;
|
||||||
|
printf("\n=> tcp_timeout_time_wait\n");
|
||||||
|
for (uint64_t i = 0; i <= config->tcp_timeout_time_wait; i++)
|
||||||
|
{
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
sess = session_manager_get_expired_session(mgr);
|
||||||
|
interval = session_manager_get_expire_interval(mgr);
|
||||||
|
|
||||||
|
if (i == config->tcp_timeout_time_wait)
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, session expired\n",
|
||||||
|
timeout_time, timestamp_get_sec());
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 0);
|
||||||
|
EXPECT_TRUE(sess == NULL);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, interval : %lu, session not expire\n",
|
||||||
|
timeout_time, timestamp_get_sec(), interval);
|
||||||
|
|
||||||
|
EXPECT_TRUE(interval <= config->tcp_timeout_init);
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 1, 0, 0, 0);
|
||||||
|
EXPECT_TRUE(sess == NULL);
|
||||||
|
}
|
||||||
|
sleep(1);
|
||||||
|
}
|
||||||
|
printf("<= tcp_timeout_time_wait\n\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
__attribute__((unused)) static void __session_manager_check_udp_timeout_data(struct session_manager *mgr, struct session_manager_config *config, enum session_state curr_state)
|
||||||
|
{
|
||||||
|
EXPECT_TRUE(curr_state == SESSION_STATE_OPENING || curr_state == SESSION_STATE_ACTIVE);
|
||||||
|
|
||||||
|
struct session *sess;
|
||||||
|
uint64_t interval;
|
||||||
|
uint64_t timeout_time = timestamp_get_sec() + config->udp_timeout_data;
|
||||||
|
printf("\n=> udp_timeout_data\n");
|
||||||
|
for (uint64_t i = 0; i <= config->udp_timeout_data; i++)
|
||||||
|
{
|
||||||
|
timestamp_update();
|
||||||
|
|
||||||
|
sess = session_manager_get_expired_session(mgr);
|
||||||
|
interval = session_manager_get_expire_interval(mgr);
|
||||||
|
|
||||||
|
if (i == config->udp_timeout_data)
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, session expired\n",
|
||||||
|
timeout_time, timestamp_get_sec());
|
||||||
|
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 0, 1);
|
||||||
|
EXPECT_TRUE(sess != NULL);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("timeout_time: %lu, curr_time: %lu, interval : %lu, session not expire\n",
|
||||||
|
timeout_time, timestamp_get_sec(), interval);
|
||||||
|
|
||||||
|
EXPECT_TRUE(interval <= config->udp_timeout_data);
|
||||||
|
if (curr_state == SESSION_STATE_OPENING)
|
||||||
|
{
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 1, 0, 0);
|
||||||
|
}
|
||||||
|
if (curr_state == SESSION_STATE_ACTIVE)
|
||||||
|
{
|
||||||
|
__session_manager_check_counter(mgr, 0, 0, 0, 0, 1, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
EXPECT_TRUE(sess == NULL);
|
||||||
|
}
|
||||||
|
sleep(1);
|
||||||
|
}
|
||||||
|
printf("<= udp_timeout_data\n\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef __cpluscplus
|
#ifdef __cpluscplus
|
||||||
|
|||||||
Reference in New Issue
Block a user