Add support for TCP port reuse (same tuple6 but different ISN) in session manager: evict old session and create new session
This commit is contained in:
@@ -44,11 +44,12 @@ enum flow_direction
|
|||||||
enum closing_reason
|
enum closing_reason
|
||||||
{
|
{
|
||||||
CLOSING_BY_TIMEOUT = 0x1,
|
CLOSING_BY_TIMEOUT = 0x1,
|
||||||
CLOSING_BY_EVICTED = 0x2,
|
CLOSING_BY_LRU_EVICTED = 0x2,
|
||||||
CLOSING_BY_CLIENT_FIN = 0x3,
|
CLOSING_BY_PORT_REUSE_EVICTED = 0x3,
|
||||||
CLOSING_BY_CLIENT_RST = 0x4,
|
CLOSING_BY_CLIENT_FIN = 0x4,
|
||||||
CLOSING_BY_SERVER_FIN = 0x5,
|
CLOSING_BY_CLIENT_RST = 0x5,
|
||||||
CLOSING_BY_SERVER_RST = 0x6,
|
CLOSING_BY_SERVER_FIN = 0x6,
|
||||||
|
CLOSING_BY_SERVER_RST = 0x7,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum session_stat
|
enum session_stat
|
||||||
|
|||||||
@@ -367,8 +367,10 @@ const char *closing_reason_to_str(enum closing_reason reason)
|
|||||||
{
|
{
|
||||||
case CLOSING_BY_TIMEOUT:
|
case CLOSING_BY_TIMEOUT:
|
||||||
return "closing by timeout";
|
return "closing by timeout";
|
||||||
case CLOSING_BY_EVICTED:
|
case CLOSING_BY_LRU_EVICTED:
|
||||||
return "closing by evicted";
|
return "closing by lru evicted";
|
||||||
|
case CLOSING_BY_PORT_REUSE_EVICTED:
|
||||||
|
return "closing by port reuse evicted";
|
||||||
case CLOSING_BY_CLIENT_FIN:
|
case CLOSING_BY_CLIENT_FIN:
|
||||||
return "closing by client FIN";
|
return "closing by client FIN";
|
||||||
case CLOSING_BY_CLIENT_RST:
|
case CLOSING_BY_CLIENT_RST:
|
||||||
|
|||||||
@@ -286,6 +286,10 @@ static void tcp_update(struct session_manager *mgr, struct session *sess, enum f
|
|||||||
uint8_t flags = tcp_hdr_get_flags(hdr);
|
uint8_t flags = tcp_hdr_get_flags(hdr);
|
||||||
uint16_t len = tcp_layer->pld_len;
|
uint16_t len = tcp_layer->pld_len;
|
||||||
|
|
||||||
|
if ((flags & TH_SYN) && half->isn == 0)
|
||||||
|
{
|
||||||
|
half->isn = tcp_hdr_get_seq(hdr);
|
||||||
|
}
|
||||||
half->flags = flags;
|
half->flags = flags;
|
||||||
half->history |= flags;
|
half->history |= flags;
|
||||||
half->seq = tcp_hdr_get_seq(hdr);
|
half->seq = tcp_hdr_get_seq(hdr);
|
||||||
@@ -586,7 +590,7 @@ static void session_update(struct session *sess, enum session_state next_state,
|
|||||||
session_set_state(sess, next_state);
|
session_set_state(sess, next_state);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void session_manager_evicte_session(struct session_manager *mgr, struct session *sess, uint64_t now)
|
static void session_manager_evicte_session(struct session_manager *mgr, struct session *sess, uint64_t now, int reason)
|
||||||
{
|
{
|
||||||
if (sess == NULL)
|
if (sess == NULL)
|
||||||
{
|
{
|
||||||
@@ -595,12 +599,19 @@ static void session_manager_evicte_session(struct session_manager *mgr, struct s
|
|||||||
|
|
||||||
// when session add to evicted queue, session lifetime is over
|
// when session add to evicted queue, session lifetime is over
|
||||||
enum session_state curr_state = session_get_state(sess);
|
enum session_state curr_state = session_get_state(sess);
|
||||||
enum session_state next_state = session_transition_run(curr_state, LRU_EVICT);
|
enum session_state next_state = session_transition_run(curr_state, reason);
|
||||||
session_transition_log(sess, curr_state, next_state, LRU_EVICT);
|
session_transition_log(sess, curr_state, next_state, reason);
|
||||||
session_set_state(sess, next_state);
|
session_set_state(sess, next_state);
|
||||||
if (!session_get_closing_reason(sess))
|
if (!session_get_closing_reason(sess))
|
||||||
{
|
{
|
||||||
session_set_closing_reason(sess, CLOSING_BY_EVICTED);
|
if (reason == PORT_REUSE_EVICT)
|
||||||
|
{
|
||||||
|
session_set_closing_reason(sess, CLOSING_BY_PORT_REUSE_EVICTED);
|
||||||
|
}
|
||||||
|
if (reason == LRU_EVICT)
|
||||||
|
{
|
||||||
|
session_set_closing_reason(sess, CLOSING_BY_LRU_EVICTED);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
session_timer_del(mgr->sess_timer, sess);
|
session_timer_del(mgr->sess_timer, sess);
|
||||||
list_add_tail(&sess->evicte, &mgr->evicte_queue);
|
list_add_tail(&sess->evicte, &mgr->evicte_queue);
|
||||||
@@ -629,6 +640,37 @@ static void session_manager_evicte_session(struct session_manager *mgr, struct s
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static struct session *session_manager_lookup_tcp_session(struct session_manager *mgr, const struct packet *pkt, const struct tuple6 *key, uint64_t now)
|
||||||
|
{
|
||||||
|
struct session *sess = session_table_find_tuple6(mgr->tcp_sess_table, key);
|
||||||
|
if (sess == NULL)
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
const struct packet_layer *tcp_layer = packet_get_innermost_layer(pkt, LAYER_TYPE_TCP);
|
||||||
|
const struct tcphdr *hdr = (const struct tcphdr *)tcp_layer->hdr_ptr;
|
||||||
|
uint8_t flags = tcp_hdr_get_flags(hdr);
|
||||||
|
if ((flags & TH_SYN) == 0)
|
||||||
|
{
|
||||||
|
return sess;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum flow_direction dir = identify_direction_by_history(sess, key);
|
||||||
|
struct tcp_half *half = &sess->tcp_halfs[dir];
|
||||||
|
if (half->isn && half->isn != tcp_hdr_get_seq(hdr))
|
||||||
|
{
|
||||||
|
// TCP port reuse, evict old session
|
||||||
|
session_manager_evicte_session(mgr, sess, now, PORT_REUSE_EVICT);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// TCP SYN retransmission
|
||||||
|
return sess;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static struct session *session_manager_new_tcp_session(struct session_manager *mgr, const struct packet *pkt, const struct tuple6 *key, uint64_t now)
|
static struct session *session_manager_new_tcp_session(struct session_manager *mgr, const struct packet *pkt, const struct tuple6 *key, uint64_t now)
|
||||||
{
|
{
|
||||||
const struct packet_layer *tcp_layer = packet_get_innermost_layer(pkt, LAYER_TYPE_TCP);
|
const struct packet_layer *tcp_layer = packet_get_innermost_layer(pkt, LAYER_TYPE_TCP);
|
||||||
@@ -644,7 +686,7 @@ static struct session *session_manager_new_tcp_session(struct session_manager *m
|
|||||||
if (mgr->opts.tcp_overload_evict_old_sess && mgr->stat.curr_nr_tcp_sess_used >= mgr->opts.max_tcp_session_num - EVICTE_SESSION_BURST)
|
if (mgr->opts.tcp_overload_evict_old_sess && mgr->stat.curr_nr_tcp_sess_used >= mgr->opts.max_tcp_session_num - EVICTE_SESSION_BURST)
|
||||||
{
|
{
|
||||||
struct session *evic_sess = session_table_find_lru(mgr->tcp_sess_table);
|
struct session *evic_sess = session_table_find_lru(mgr->tcp_sess_table);
|
||||||
session_manager_evicte_session(mgr, evic_sess, now);
|
session_manager_evicte_session(mgr, evic_sess, now, LRU_EVICT);
|
||||||
}
|
}
|
||||||
|
|
||||||
enum flow_direction dir = (flags & TH_ACK) ? FLOW_DIRECTION_S2C : FLOW_DIRECTION_C2S;
|
enum flow_direction dir = (flags & TH_ACK) ? FLOW_DIRECTION_S2C : FLOW_DIRECTION_C2S;
|
||||||
@@ -691,7 +733,7 @@ static struct session *session_manager_new_udp_session(struct session_manager *m
|
|||||||
if (mgr->opts.udp_overload_evict_old_sess && mgr->stat.curr_nr_udp_sess_used >= mgr->opts.max_udp_session_num - EVICTE_SESSION_BURST)
|
if (mgr->opts.udp_overload_evict_old_sess && mgr->stat.curr_nr_udp_sess_used >= mgr->opts.max_udp_session_num - EVICTE_SESSION_BURST)
|
||||||
{
|
{
|
||||||
struct session *evic_sess = session_table_find_lru(mgr->udp_sess_table);
|
struct session *evic_sess = session_table_find_lru(mgr->udp_sess_table);
|
||||||
session_manager_evicte_session(mgr, evic_sess, now);
|
session_manager_evicte_session(mgr, evic_sess, now, LRU_EVICT);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct session *sess = session_pool_pop(mgr->sess_pool);
|
struct session *sess = session_pool_pop(mgr->sess_pool);
|
||||||
@@ -1006,7 +1048,7 @@ void session_manager_free_session(struct session_manager *mgr, struct session *s
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
struct session *session_manager_lookup_session(struct session_manager *mgr, const struct packet *pkt)
|
struct session *session_manager_lookup_session(struct session_manager *mgr, const struct packet *pkt, uint64_t now)
|
||||||
{
|
{
|
||||||
struct tuple6 key;
|
struct tuple6 key;
|
||||||
if (packet_get_innermost_tuple6(pkt, &key))
|
if (packet_get_innermost_tuple6(pkt, &key))
|
||||||
@@ -1018,7 +1060,7 @@ struct session *session_manager_lookup_session(struct session_manager *mgr, cons
|
|||||||
case IPPROTO_UDP:
|
case IPPROTO_UDP:
|
||||||
return session_table_find_tuple6(mgr->udp_sess_table, &key);
|
return session_table_find_tuple6(mgr->udp_sess_table, &key);
|
||||||
case IPPROTO_TCP:
|
case IPPROTO_TCP:
|
||||||
return session_table_find_tuple6(mgr->tcp_sess_table, &key);
|
return session_manager_lookup_tcp_session(mgr, pkt, &key, now);
|
||||||
default:
|
default:
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -104,7 +104,7 @@ void session_manager_record_duplicated_packet(struct session_manager *mgr, const
|
|||||||
struct session *session_manager_new_session(struct session_manager *mgr, const struct packet *pkt, uint64_t now);
|
struct session *session_manager_new_session(struct session_manager *mgr, const struct packet *pkt, uint64_t now);
|
||||||
void session_manager_free_session(struct session_manager *mgr, struct session *sess);
|
void session_manager_free_session(struct session_manager *mgr, struct session *sess);
|
||||||
|
|
||||||
struct session *session_manager_lookup_session(struct session_manager *mgr, const struct packet *pkt);
|
struct session *session_manager_lookup_session(struct session_manager *mgr, const struct packet *pkt, uint64_t now);
|
||||||
int session_manager_update_session(struct session_manager *mgr, struct session *sess, const struct packet *pkt, uint64_t now);
|
int session_manager_update_session(struct session_manager *mgr, struct session *sess, const struct packet *pkt, uint64_t now);
|
||||||
|
|
||||||
// return session need free by session_manager_free_session()
|
// return session need free by session_manager_free_session()
|
||||||
|
|||||||
@@ -26,7 +26,8 @@ struct tcp_half
|
|||||||
struct tcp_reassembly *assembler;
|
struct tcp_reassembly *assembler;
|
||||||
struct tcp_segment in_order;
|
struct tcp_segment in_order;
|
||||||
uint32_t in_order_ref;
|
uint32_t in_order_ref;
|
||||||
|
|
||||||
|
uint32_t isn;
|
||||||
uint32_t seq;
|
uint32_t seq;
|
||||||
uint32_t ack;
|
uint32_t ack;
|
||||||
uint16_t len;
|
uint16_t len;
|
||||||
|
|||||||
@@ -71,6 +71,10 @@ static void session_inputs_to_str(int inputs, char *buff, int len)
|
|||||||
{
|
{
|
||||||
nused += snprintf(buff + nused, len - nused, "LRU_EVICT ");
|
nused += snprintf(buff + nused, len - nused, "LRU_EVICT ");
|
||||||
}
|
}
|
||||||
|
if (inputs & PORT_REUSE_EVICT)
|
||||||
|
{
|
||||||
|
nused += snprintf(buff + nused, len - nused, "PORT_REUSE_EVICT ");
|
||||||
|
}
|
||||||
if (inputs & USER_CLOSE)
|
if (inputs & USER_CLOSE)
|
||||||
{
|
{
|
||||||
nused += snprintf(buff + nused, len - nused, "USER_CLOSE ");
|
nused += snprintf(buff + nused, len - nused, "USER_CLOSE ");
|
||||||
@@ -94,7 +98,7 @@ void session_transition_init()
|
|||||||
fsm[SESSION_STATE_OPENING][2].inputs_mask = USER_CLOSE;
|
fsm[SESSION_STATE_OPENING][2].inputs_mask = USER_CLOSE;
|
||||||
fsm[SESSION_STATE_OPENING][2].next_state = SESSION_STATE_DISCARD;
|
fsm[SESSION_STATE_OPENING][2].next_state = SESSION_STATE_DISCARD;
|
||||||
|
|
||||||
fsm[SESSION_STATE_OPENING][3].inputs_mask = LRU_EVICT;
|
fsm[SESSION_STATE_OPENING][3].inputs_mask = LRU_EVICT | PORT_REUSE_EVICT;
|
||||||
fsm[SESSION_STATE_OPENING][3].next_state = SESSION_STATE_CLOSED;
|
fsm[SESSION_STATE_OPENING][3].next_state = SESSION_STATE_CLOSED;
|
||||||
|
|
||||||
fsm[SESSION_STATE_OPENING][4].inputs_mask = NONE;
|
fsm[SESSION_STATE_OPENING][4].inputs_mask = NONE;
|
||||||
@@ -106,7 +110,7 @@ void session_transition_init()
|
|||||||
fsm[SESSION_STATE_ACTIVE][1].inputs_mask = USER_CLOSE;
|
fsm[SESSION_STATE_ACTIVE][1].inputs_mask = USER_CLOSE;
|
||||||
fsm[SESSION_STATE_ACTIVE][1].next_state = SESSION_STATE_DISCARD;
|
fsm[SESSION_STATE_ACTIVE][1].next_state = SESSION_STATE_DISCARD;
|
||||||
|
|
||||||
fsm[SESSION_STATE_ACTIVE][2].inputs_mask = LRU_EVICT;
|
fsm[SESSION_STATE_ACTIVE][2].inputs_mask = LRU_EVICT | PORT_REUSE_EVICT;
|
||||||
fsm[SESSION_STATE_ACTIVE][2].next_state = SESSION_STATE_CLOSED;
|
fsm[SESSION_STATE_ACTIVE][2].next_state = SESSION_STATE_CLOSED;
|
||||||
|
|
||||||
fsm[SESSION_STATE_ACTIVE][3].inputs_mask = NONE;
|
fsm[SESSION_STATE_ACTIVE][3].inputs_mask = NONE;
|
||||||
@@ -115,13 +119,13 @@ void session_transition_init()
|
|||||||
fsm[SESSION_STATE_CLOSING][0].inputs_mask = USER_CLOSE;
|
fsm[SESSION_STATE_CLOSING][0].inputs_mask = USER_CLOSE;
|
||||||
fsm[SESSION_STATE_CLOSING][0].next_state = SESSION_STATE_DISCARD;
|
fsm[SESSION_STATE_CLOSING][0].next_state = SESSION_STATE_DISCARD;
|
||||||
|
|
||||||
fsm[SESSION_STATE_CLOSING][1].inputs_mask = LRU_EVICT | TIMEOUT;
|
fsm[SESSION_STATE_CLOSING][1].inputs_mask = LRU_EVICT | PORT_REUSE_EVICT | TIMEOUT;
|
||||||
fsm[SESSION_STATE_CLOSING][1].next_state = SESSION_STATE_CLOSED;
|
fsm[SESSION_STATE_CLOSING][1].next_state = SESSION_STATE_CLOSED;
|
||||||
|
|
||||||
fsm[SESSION_STATE_CLOSING][2].inputs_mask = NONE;
|
fsm[SESSION_STATE_CLOSING][2].inputs_mask = NONE;
|
||||||
fsm[SESSION_STATE_CLOSING][2].next_state = SESSION_STATE_CLOSING;
|
fsm[SESSION_STATE_CLOSING][2].next_state = SESSION_STATE_CLOSING;
|
||||||
|
|
||||||
fsm[SESSION_STATE_DISCARD][0].inputs_mask = LRU_EVICT | TIMEOUT;
|
fsm[SESSION_STATE_DISCARD][0].inputs_mask = LRU_EVICT | PORT_REUSE_EVICT | TIMEOUT;
|
||||||
fsm[SESSION_STATE_DISCARD][0].next_state = SESSION_STATE_CLOSED;
|
fsm[SESSION_STATE_DISCARD][0].next_state = SESSION_STATE_CLOSED;
|
||||||
|
|
||||||
fsm[SESSION_STATE_DISCARD][1].inputs_mask = NONE;
|
fsm[SESSION_STATE_DISCARD][1].inputs_mask = NONE;
|
||||||
|
|||||||
@@ -29,8 +29,11 @@ enum session_inputs
|
|||||||
// session table full evict
|
// session table full evict
|
||||||
LRU_EVICT = 1 << 7,
|
LRU_EVICT = 1 << 7,
|
||||||
|
|
||||||
|
// port reuse evict
|
||||||
|
PORT_REUSE_EVICT = 1 << 8,
|
||||||
|
|
||||||
// user close
|
// user close
|
||||||
USER_CLOSE = 1 << 8,
|
USER_CLOSE = 1 << 9,
|
||||||
};
|
};
|
||||||
|
|
||||||
void session_transition_init();
|
void session_transition_init();
|
||||||
|
|||||||
@@ -313,7 +313,7 @@ TEST(CASE, TCP_FAST_OPEN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYN_DUP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -85,7 +85,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYN_DUP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == -1);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == -1);
|
||||||
@@ -103,7 +103,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYN_DUP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -133,7 +133,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYNACK_DUP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -148,7 +148,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYNACK_DUP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == -1);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == -1);
|
||||||
@@ -166,7 +166,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SYNACK_DUP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -197,7 +197,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SKIP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -214,7 +214,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SKIP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -231,7 +231,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SKIP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -246,7 +246,7 @@ TEST(TCP_DUPKT_FILTER_ENABLE, SKIP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -279,7 +279,7 @@ TEST(TCP_DUPKT_FILTER_DISABLE, SYN_DUP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -294,7 +294,7 @@ TEST(TCP_DUPKT_FILTER_DISABLE, SYN_DUP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -327,7 +327,7 @@ TEST(TCP_DUPKT_FILTER_DISABLE, SYNACK_DUP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -342,7 +342,7 @@ TEST(TCP_DUPKT_FILTER_DISABLE, SYNACK_DUP)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
|
|||||||
@@ -132,7 +132,7 @@ TEST(TCP_OVERLOAD, EVICT_NEW_SESS)
|
|||||||
for (uint32_t i = 0; i < RX_BURST_MAX; i++)
|
for (uint32_t i = 0; i < RX_BURST_MAX; i++)
|
||||||
{
|
{
|
||||||
packet_set_ip_src_addr(&pkt, opts.max_tcp_session_num + i);
|
packet_set_ip_src_addr(&pkt, opts.max_tcp_session_num + i);
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
EXPECT_TRUE(session_manager_new_session(mgr, &pkt, 1) == NULL);
|
EXPECT_TRUE(session_manager_new_session(mgr, &pkt, 1) == NULL);
|
||||||
}
|
}
|
||||||
printf("=> Session Manager: after evicte new session\n");
|
printf("=> Session Manager: after evicte new session\n");
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ TEST(UDP_OVERLOAD, EVICT_OLD_SESS)
|
|||||||
for (uint32_t i = 0; i < RX_BURST_MAX; i++)
|
for (uint32_t i = 0; i < RX_BURST_MAX; i++)
|
||||||
{
|
{
|
||||||
packet_set_ip_src_addr(&pkt, i);
|
packet_set_ip_src_addr(&pkt, i);
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
EXPECT_TRUE(session_manager_new_session(mgr, &pkt, 1) == NULL); // hit evicted session, can't renew session
|
EXPECT_TRUE(session_manager_new_session(mgr, &pkt, 1) == NULL); // hit evicted session, can't renew session
|
||||||
}
|
}
|
||||||
printf("=> Session Manager: after readd %d evicted sessions\n", RX_BURST_MAX);
|
printf("=> Session Manager: after readd %d evicted sessions\n", RX_BURST_MAX);
|
||||||
@@ -123,7 +123,7 @@ TEST(UDP_OVERLOAD, EVICT_OLD_SESS)
|
|||||||
|
|
||||||
// evicted session timeout
|
// evicted session timeout
|
||||||
packet_set_ip_src_addr(&pkt, 0);
|
packet_set_ip_src_addr(&pkt, 0);
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1 + opts.evicted_session_filter_timeout) == NULL);
|
||||||
EXPECT_TRUE(session_manager_new_session(mgr, &pkt, 1 + opts.evicted_session_filter_timeout));
|
EXPECT_TRUE(session_manager_new_session(mgr, &pkt, 1 + opts.evicted_session_filter_timeout));
|
||||||
printf("=> Session Manager: after evicted session timeout\n");
|
printf("=> Session Manager: after evicted session timeout\n");
|
||||||
stat = session_manager_stat(mgr);
|
stat = session_manager_stat(mgr);
|
||||||
@@ -184,7 +184,7 @@ TEST(UDP_OVERLOAD, EVICT_NEW_SESS)
|
|||||||
for (uint32_t i = 0; i < RX_BURST_MAX; i++)
|
for (uint32_t i = 0; i < RX_BURST_MAX; i++)
|
||||||
{
|
{
|
||||||
packet_set_ip_src_addr(&pkt, opts.max_udp_session_num + i);
|
packet_set_ip_src_addr(&pkt, opts.max_udp_session_num + i);
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
EXPECT_TRUE(session_manager_new_session(mgr, &pkt, 1) == NULL);
|
EXPECT_TRUE(session_manager_new_session(mgr, &pkt, 1) == NULL);
|
||||||
}
|
}
|
||||||
printf("=> Session Manager: after readd %d evicted session\n", RX_BURST_MAX);
|
printf("=> Session Manager: after readd %d evicted session\n", RX_BURST_MAX);
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -90,7 +90,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -104,7 +104,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -118,7 +118,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 4);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 4) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 4) == 0);
|
||||||
@@ -132,7 +132,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 5);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 5) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 5) == 0);
|
||||||
@@ -146,7 +146,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 6);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 6) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 6) == 0);
|
||||||
@@ -160,7 +160,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 7);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 7) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 7) == 0);
|
||||||
@@ -260,7 +260,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, SEQ_WRAPAROUND)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -274,7 +274,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, SEQ_WRAPAROUND)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -288,7 +288,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, SEQ_WRAPAROUND)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -306,7 +306,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, SEQ_WRAPAROUND)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 4);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 4) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 4) == 0);
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ TEST(SESSION_TRANSITION, RUN)
|
|||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_OPENING, TIMEOUT) == SESSION_STATE_CLOSING);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_OPENING, TIMEOUT) == SESSION_STATE_CLOSING);
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_OPENING, USER_CLOSE) == SESSION_STATE_DISCARD);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_OPENING, USER_CLOSE) == SESSION_STATE_DISCARD);
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_OPENING, LRU_EVICT) == SESSION_STATE_CLOSED);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_OPENING, LRU_EVICT) == SESSION_STATE_CLOSED);
|
||||||
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_OPENING, PORT_REUSE_EVICT) == SESSION_STATE_CLOSED);
|
||||||
|
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, NONE) == SESSION_STATE_ACTIVE);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, NONE) == SESSION_STATE_ACTIVE);
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, TCP_FIN) == SESSION_STATE_CLOSING);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, TCP_FIN) == SESSION_STATE_CLOSING);
|
||||||
@@ -26,14 +27,17 @@ TEST(SESSION_TRANSITION, RUN)
|
|||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, TIMEOUT) == SESSION_STATE_CLOSING);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, TIMEOUT) == SESSION_STATE_CLOSING);
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, USER_CLOSE) == SESSION_STATE_DISCARD);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, USER_CLOSE) == SESSION_STATE_DISCARD);
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, LRU_EVICT) == SESSION_STATE_CLOSED);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, LRU_EVICT) == SESSION_STATE_CLOSED);
|
||||||
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_ACTIVE, PORT_REUSE_EVICT) == SESSION_STATE_CLOSED);
|
||||||
|
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_CLOSING, NONE) == SESSION_STATE_CLOSING);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_CLOSING, NONE) == SESSION_STATE_CLOSING);
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_CLOSING, USER_CLOSE) == SESSION_STATE_DISCARD);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_CLOSING, USER_CLOSE) == SESSION_STATE_DISCARD);
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_CLOSING, LRU_EVICT) == SESSION_STATE_CLOSED);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_CLOSING, LRU_EVICT) == SESSION_STATE_CLOSED);
|
||||||
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_CLOSING, PORT_REUSE_EVICT) == SESSION_STATE_CLOSED);
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_CLOSING, TIMEOUT) == SESSION_STATE_CLOSED);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_CLOSING, TIMEOUT) == SESSION_STATE_CLOSED);
|
||||||
|
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_DISCARD, NONE) == SESSION_STATE_DISCARD);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_DISCARD, NONE) == SESSION_STATE_DISCARD);
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_DISCARD, LRU_EVICT) == SESSION_STATE_CLOSED);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_DISCARD, LRU_EVICT) == SESSION_STATE_CLOSED);
|
||||||
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_DISCARD, PORT_REUSE_EVICT) == SESSION_STATE_CLOSED);
|
||||||
EXPECT_TRUE(session_transition_run(SESSION_STATE_DISCARD, TIMEOUT) == SESSION_STATE_CLOSED);
|
EXPECT_TRUE(session_transition_run(SESSION_STATE_DISCARD, TIMEOUT) == SESSION_STATE_CLOSED);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ static void build_active_tcp_session(struct session_manager *mgr, struct session
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -68,7 +68,7 @@ static void build_active_tcp_session(struct session_manager *mgr, struct session
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -100,7 +100,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_FIN_FIN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -111,7 +111,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_FIN_FIN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -198,7 +198,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_RST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -285,7 +285,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_RST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -413,7 +413,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_HALF_CLOSED_TIMEOUT)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -493,7 +493,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_HALF_CLOSED_TIMEOUT)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -148,7 +148,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -226,7 +226,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -237,7 +237,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -315,7 +315,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -326,7 +326,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -337,7 +337,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -417,7 +417,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -433,7 +433,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -513,7 +513,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -530,7 +530,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -608,7 +608,7 @@ TEST(TCP_INIT_TO_OPENING, BY_C2S_ASMMETRIC)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -619,7 +619,7 @@ TEST(TCP_INIT_TO_OPENING, BY_C2S_ASMMETRIC)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -697,7 +697,7 @@ TEST(TCP_INIT_TO_OPENING, BY_S2C_ASMMETRIC)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -708,7 +708,7 @@ TEST(TCP_INIT_TO_OPENING, BY_S2C_ASMMETRIC)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -96,7 +96,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -127,7 +127,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -158,7 +158,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 4);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 4) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 4) == 0);
|
||||||
@@ -189,7 +189,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 5);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 5) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 5) == 0);
|
||||||
@@ -220,7 +220,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 6);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 6) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 6) == 0);
|
||||||
@@ -251,7 +251,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 7);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 7) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 7) == 0);
|
||||||
@@ -282,7 +282,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 8);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 8) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 8) == 0);
|
||||||
@@ -313,7 +313,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 9);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 9) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 9) == 0);
|
||||||
@@ -344,7 +344,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 10);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 10) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 10) == 0);
|
||||||
@@ -375,7 +375,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 11);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 11) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 11) == 0);
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYN_C2S_DATA)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -80,7 +80,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYN_C2S_DATA)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -158,7 +158,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYNACK_S2C_DATA)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -169,7 +169,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYNACK_S2C_DATA)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -81,7 +81,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -92,7 +92,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -169,7 +169,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_RST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -187,7 +187,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_RST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -264,7 +264,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_RST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -282,7 +282,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_RST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -358,7 +358,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_INIT_TIMEOUT)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -416,7 +416,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_HANDSHAKE_TIMEOUT)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -427,7 +427,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_HANDSHAKE_TIMEOUT)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -505,7 +505,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -516,7 +516,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -527,7 +527,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 3);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 3) == 0);
|
||||||
@@ -605,7 +605,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_HALF_FIN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -616,7 +616,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_HALF_FIN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
@@ -693,7 +693,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_HALF_FIN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -704,7 +704,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_HALF_FIN)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -95,7 +95,7 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_C2S)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -149,7 +149,7 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_S2C)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ TEST(TIMEOUT, TCP_TIMEOUT_DATA)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -73,7 +73,7 @@ TEST(TIMEOUT, TCP_TIMEOUT_DATA)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ TEST(TIMEOUT, TCP_TIMEOUT_HANDSHAKE)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ TEST(TIMEOUT, TCP_TIMEOUT_INIT)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ TEST(TIMEOUT, UDP_TIMEOUT_DATA1)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -98,7 +98,7 @@ TEST(TIMEOUT, UDP_TIMEOUT_DATA2)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt) == NULL);
|
EXPECT_TRUE(session_manager_lookup_session(mgr, &pkt, 1) == NULL);
|
||||||
// new session
|
// new session
|
||||||
sess = session_manager_new_session(mgr, &pkt, 1);
|
sess = session_manager_new_session(mgr, &pkt, 1);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
@@ -109,7 +109,7 @@ TEST(TIMEOUT, UDP_TIMEOUT_DATA2)
|
|||||||
printf("<= Packet Parse: done\n\n");
|
printf("<= Packet Parse: done\n\n");
|
||||||
|
|
||||||
// lookup session
|
// lookup session
|
||||||
sess = session_manager_lookup_session(mgr, &pkt);
|
sess = session_manager_lookup_session(mgr, &pkt, 2);
|
||||||
EXPECT_TRUE(sess);
|
EXPECT_TRUE(sess);
|
||||||
// update session
|
// update session
|
||||||
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
EXPECT_TRUE(session_manager_update_session(mgr, sess, &pkt, 2) == 0);
|
||||||
|
|||||||
@@ -152,7 +152,7 @@ static void *work_thread(void *arg)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sess = session_manager_lookup_session(sess_mgr, pkt);
|
sess = session_manager_lookup_session(sess_mgr, pkt, now);
|
||||||
if (sess == NULL)
|
if (sess == NULL)
|
||||||
{
|
{
|
||||||
sess = session_manager_new_session(sess_mgr, pkt, now);
|
sess = session_manager_new_session(sess_mgr, pkt, now);
|
||||||
|
|||||||
Reference in New Issue
Block a user