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_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)
|
||||
@@ -609,7 +609,7 @@ static void session_manager_update_session_packet(struct session_manager *mgr, s
|
||||
}
|
||||
session_set0_cur_pkt(sess, pkt);
|
||||
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)
|
||||
@@ -1128,7 +1128,7 @@ struct session *session_manager_get_expired_session(struct session_manager *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)
|
||||
{
|
||||
session_run_expirecb(sess);
|
||||
@@ -1160,44 +1160,22 @@ struct session *session_manager_get_evicted_session(struct session_manager *mgr)
|
||||
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)
|
||||
{
|
||||
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)
|
||||
{
|
||||
switch (state)
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
out->tcp_sess_num = mgr->tcp_sess_num;
|
||||
out->tcp_opening_sess_num = mgr->tcp_opening_sess_num;
|
||||
out->tcp_active_sess_num = mgr->tcp_active_sess_num;
|
||||
out->tcp_closing_sess_num = mgr->tcp_closing_sess_num;
|
||||
|
||||
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)
|
||||
|
||||
Reference in New Issue
Block a user