Resolve merge conflicts
This commit is contained in:
@@ -123,17 +123,17 @@ enum session_timestamp
|
||||
};
|
||||
|
||||
struct session;
|
||||
|
||||
#define SESSION_SEEN_C2S_FLOW (1 << 0)
|
||||
#define SESSION_SEEN_S2C_FLOW (1 << 1)
|
||||
int session_is_symmetric(struct session *sess, unsigned char *flag);
|
||||
int session_is_symmetric(const struct session *sess, unsigned char *flag);
|
||||
|
||||
int session_has_duplicate_traffic(const struct session *sess);
|
||||
enum session_type session_get_type(const struct session *sess);
|
||||
enum session_state session_get_state(const struct session *sess);
|
||||
|
||||
enum session_state session_get_current_state(const struct session *sess);
|
||||
const struct packet *session_get0_current_packet(struct session *sess);
|
||||
const char *session_get0_current_payload(struct session *sess, size_t *payload_len);
|
||||
const struct packet *session_get0_current_packet(const struct session *sess);
|
||||
const char *session_get0_current_payload(const struct session *sess, size_t *payload_len);
|
||||
|
||||
enum closing_reason session_get_closing_reason(const struct session *sess);
|
||||
enum session_direction session_get_direction(const struct session *sess);
|
||||
@@ -142,8 +142,6 @@ const struct packet *session_get_first_packet(const struct session *sess, enum f
|
||||
|
||||
const struct tuple6 *session_get_tuple6(const struct session *sess);
|
||||
enum flow_direction session_get_tuple6_direction(const struct session *sess);
|
||||
// tuple6 str format: "src_addr:src_port -> dst_addr:dst_port, proto: ip_proto, domain: domain"
|
||||
const char *session_get_tuple6_str(const struct session *sess);
|
||||
|
||||
uint64_t session_get_id(const struct session *sess);
|
||||
uint64_t session_get_timestamp(const struct session *sess, enum session_timestamp type);
|
||||
|
||||
@@ -9,8 +9,6 @@ extern "C"
|
||||
#include <stdint.h>
|
||||
#include "stellar/session.h"
|
||||
|
||||
#include "session.h"
|
||||
|
||||
struct session;
|
||||
struct stellar;
|
||||
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#include "stellar/session.h"
|
||||
#include <assert.h>
|
||||
|
||||
#include "packet_priv.h"
|
||||
@@ -62,7 +61,7 @@ enum flow_direction session_get_tuple6_direction(const struct session *sess)
|
||||
return sess->tuple_dir;
|
||||
}
|
||||
|
||||
const char *session_get_tuple6_str(const struct session *sess)
|
||||
const char *session_get0_readable_addr(const struct session *sess)
|
||||
{
|
||||
return sess->tuple_str;
|
||||
}
|
||||
@@ -92,16 +91,11 @@ enum flow_direction session_get_current_flow_direction(const struct session *ses
|
||||
return sess->flow_dir;
|
||||
}
|
||||
|
||||
void session_set_state(struct session *sess, enum session_state state)
|
||||
void session_set_current_state(struct session *sess, enum session_state state)
|
||||
{
|
||||
sess->state = state;
|
||||
}
|
||||
|
||||
enum session_state session_get_state(const struct session *sess)
|
||||
{
|
||||
return sess->state;
|
||||
}
|
||||
|
||||
enum session_state session_get_current_state(const struct session *sess)
|
||||
{
|
||||
return sess->state;
|
||||
@@ -202,50 +196,51 @@ void session_set_current_packet(struct session *sess, const struct packet *pkt)
|
||||
sess->curr_pkt = pkt;
|
||||
}
|
||||
|
||||
const struct packet *session_get_current_packet(const struct session *sess)
|
||||
const struct packet *session_get0_current_packet(const struct session *sess)
|
||||
{
|
||||
return sess->curr_pkt;
|
||||
}
|
||||
|
||||
const inline struct packet *session_get0_current_packet(struct session *sess)
|
||||
const char *session_get0_current_payload(const struct session *sess, size_t *payload_len)
|
||||
{
|
||||
return sess->curr_pkt;
|
||||
}
|
||||
|
||||
const char *session_get0_current_payload(struct session *sess, size_t *payload_len)
|
||||
{
|
||||
const struct packet *pkt=session_get_current_packet(sess);
|
||||
if(pkt)
|
||||
const struct packet *pkt = session_get0_current_packet(sess);
|
||||
if (pkt)
|
||||
{
|
||||
const struct packet_layer *pkt_layer=packet_get_innermost_layer(pkt, LAYER_TYPE_ALL);
|
||||
if(pkt_layer)
|
||||
const struct packet_layer *pkt_layer = packet_get_innermost_layer(pkt, LAYER_TYPE_ALL);
|
||||
if (pkt_layer)
|
||||
{
|
||||
*payload_len=pkt_layer->pld_len;
|
||||
*payload_len = pkt_layer->pld_len;
|
||||
return pkt_layer->pld_ptr;
|
||||
}
|
||||
}
|
||||
*payload_len=0;
|
||||
*payload_len = 0;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
int session_is_symmetric(struct session *sess, unsigned char *flag)
|
||||
int session_is_symmetric(const struct session *sess, unsigned char *flag)
|
||||
{
|
||||
int is_symmetric=0;
|
||||
int is_symmetric = 0;
|
||||
if (sess->first_pkt[FLOW_DIRECTION_C2S] && sess->first_pkt[FLOW_DIRECTION_S2C])
|
||||
{
|
||||
if (flag)
|
||||
{
|
||||
*flag = (SESSION_SEEN_C2S_FLOW | SESSION_SEEN_S2C_FLOW);
|
||||
}
|
||||
is_symmetric = 1;
|
||||
}
|
||||
else if (sess->first_pkt[FLOW_DIRECTION_C2S])
|
||||
{
|
||||
if (flag)
|
||||
{
|
||||
*flag = SESSION_SEEN_C2S_FLOW;
|
||||
}
|
||||
}
|
||||
else if (sess->first_pkt[FLOW_DIRECTION_S2C])
|
||||
{
|
||||
if (flag)
|
||||
{
|
||||
*flag = SESSION_SEEN_S2C_FLOW;
|
||||
}
|
||||
}
|
||||
return is_symmetric;
|
||||
}
|
||||
@@ -518,12 +513,12 @@ int session_to_json(struct session *sess, char *buff, int size)
|
||||
used += snprintf(buff + used, size - used, "\"id\":%" PRIu64 ",", session_get_id(sess));
|
||||
used += snprintf(buff + used, size - used, "\"start_timestamp\":%" PRIu64 ",", session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
used += snprintf(buff + used, size - used, "\"last_timestamp\":%" PRIu64 ",", session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
used += snprintf(buff + used, size - used, "\"tuple\":\"%s\",", session_get_tuple6_str(sess));
|
||||
used += snprintf(buff + used, size - used, "\"tuple\":\"%s\",", session_get0_readable_addr(sess));
|
||||
used += snprintf(buff + used, size - used, "\"type\":\"%s\",", session_type_to_str(session_get_type(sess)));
|
||||
used += snprintf(buff + used, size - used, "\"state\":\"%s\",", session_state_to_str(session_get_state(sess)));
|
||||
used += snprintf(buff + used, size - used, "\"state\":\"%s\",", session_state_to_str(session_get_current_state(sess)));
|
||||
used += snprintf(buff + used, size - used, "\"closing_reason\":\"%s\",", closing_reason_to_str(session_get_closing_reason(sess)));
|
||||
used += snprintf(buff + used, size - used, "\"duplicate_traffic\":%d,", session_has_duplicate_traffic(sess));
|
||||
used += snprintf(buff + used, size - used, "\"current_packet\":\"%p\",", session_get_current_packet(sess));
|
||||
used += snprintf(buff + used, size - used, "\"current_packet\":\"%p\",", session_get0_current_packet(sess));
|
||||
|
||||
const char *str[] = {"c2s", "s2c"};
|
||||
enum flow_direction dir[] = {FLOW_DIRECTION_C2S, FLOW_DIRECTION_S2C};
|
||||
|
||||
@@ -271,7 +271,7 @@ static int tcp_init(struct session_manager *mgr, struct session *sess)
|
||||
}
|
||||
|
||||
SESSION_LOG_DEBUG("session %lu %s new c2s tcp assembler %p, s2c tcp assembler %p",
|
||||
session_get_id(sess), session_get_tuple6_str(sess),
|
||||
session_get_id(sess), session_get0_readable_addr(sess),
|
||||
sess->tcp_halfs[FLOW_DIRECTION_C2S].assembler,
|
||||
sess->tcp_halfs[FLOW_DIRECTION_S2C].assembler);
|
||||
|
||||
@@ -524,7 +524,7 @@ static int duplicated_packet_bypass(struct session_manager *mgr, struct session
|
||||
static void session_update(struct session *sess, enum session_state next_state, const struct packet *pkt, const struct tuple6 *key, enum flow_direction dir)
|
||||
{
|
||||
uint64_t real_sec = stellar_get_real_time_sec();
|
||||
if (session_get_state(sess) == SESSION_STATE_INIT)
|
||||
if (session_get_current_state(sess) == SESSION_STATE_INIT)
|
||||
{
|
||||
session_set_id(sess, id_generator_alloc());
|
||||
session_set_tuple(sess, key);
|
||||
@@ -589,7 +589,7 @@ static void session_update(struct session *sess, enum session_state next_state,
|
||||
session_set_current_packet(sess, pkt);
|
||||
session_set_current_flow_direction(sess, dir);
|
||||
session_set_timestamp(sess, SESSION_TIMESTAMP_LAST, real_sec);
|
||||
session_set_state(sess, next_state);
|
||||
session_set_current_state(sess, next_state);
|
||||
}
|
||||
|
||||
static void session_manager_evicte_session(struct session_manager *mgr, struct session *sess, uint64_t now, int reason)
|
||||
@@ -600,10 +600,10 @@ static void session_manager_evicte_session(struct session_manager *mgr, struct s
|
||||
}
|
||||
|
||||
// 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_current_state(sess);
|
||||
enum session_state next_state = session_transition_run(curr_state, reason);
|
||||
session_transition_log(sess, curr_state, next_state, reason);
|
||||
session_set_state(sess, next_state);
|
||||
session_set_current_state(sess, next_state);
|
||||
if (!session_get_closing_reason(sess))
|
||||
{
|
||||
if (reason == PORT_REUSE_EVICT)
|
||||
@@ -776,7 +776,7 @@ static int session_manager_update_tcp_session(struct session_manager *mgr, struc
|
||||
inputs |= tcp_layer->pld_len ? TCP_DATA : NONE;
|
||||
|
||||
// update state
|
||||
enum session_state curr_state = session_get_state(sess);
|
||||
enum session_state curr_state = session_get_current_state(sess);
|
||||
enum session_state next_state = session_transition_run(curr_state, inputs);
|
||||
|
||||
// update session
|
||||
@@ -851,12 +851,12 @@ static int session_manager_update_tcp_session(struct session_manager *mgr, struc
|
||||
static int session_manager_update_udp_session(struct session_manager *mgr, struct session *sess, const struct packet *pkt, const struct tuple6 *key, uint64_t now)
|
||||
{
|
||||
enum flow_direction dir = identify_direction_by_history(sess, key);
|
||||
enum session_state curr_state = session_get_state(sess);
|
||||
enum session_state curr_state = session_get_current_state(sess);
|
||||
enum session_state next_state = session_transition_run(curr_state, UDP_DATA);
|
||||
session_update(sess, next_state, pkt, key, dir);
|
||||
session_transition_log(sess, curr_state, next_state, UDP_DATA);
|
||||
|
||||
if (session_get_state(sess) == SESSION_STATE_DISCARD)
|
||||
if (session_get_current_state(sess) == SESSION_STATE_DISCARD)
|
||||
{
|
||||
session_timer_update(mgr->sess_timer, sess, now + mgr->opts.udp_discard_timeout);
|
||||
}
|
||||
@@ -1019,7 +1019,7 @@ void session_manager_free_session(struct session_manager *mgr, struct session *s
|
||||
{
|
||||
session_table_del(mgr->tcp_sess_table, sess);
|
||||
}
|
||||
SESS_MGR_STAT_DEC(&mgr->stat, session_get_state(sess), tcp);
|
||||
SESS_MGR_STAT_DEC(&mgr->stat, session_get_current_state(sess), tcp);
|
||||
mgr->stat.curr_nr_tcp_sess_used--;
|
||||
break;
|
||||
case SESSION_TYPE_UDP:
|
||||
@@ -1027,7 +1027,7 @@ void session_manager_free_session(struct session_manager *mgr, struct session *s
|
||||
{
|
||||
session_table_del(mgr->udp_sess_table, sess);
|
||||
}
|
||||
SESS_MGR_STAT_DEC(&mgr->stat, session_get_state(sess), udp);
|
||||
SESS_MGR_STAT_DEC(&mgr->stat, session_get_current_state(sess), udp);
|
||||
mgr->stat.curr_nr_udp_sess_used--;
|
||||
break;
|
||||
default:
|
||||
@@ -1096,10 +1096,10 @@ struct session *session_manager_get_expired_session(struct session_manager *mgr,
|
||||
struct session *sess = session_timer_expire(mgr->sess_timer, now);
|
||||
if (sess)
|
||||
{
|
||||
enum session_state curr_state = session_get_state(sess);
|
||||
enum session_state curr_state = session_get_current_state(sess);
|
||||
enum session_state next_state = session_transition_run(curr_state, TIMEOUT);
|
||||
session_transition_log(sess, curr_state, next_state, TIMEOUT);
|
||||
session_set_state(sess, next_state);
|
||||
session_set_current_state(sess, next_state);
|
||||
|
||||
switch (session_get_type(sess))
|
||||
{
|
||||
|
||||
@@ -87,7 +87,7 @@ void session_set_tuple_direction(struct session *sess, enum flow_direction dir);
|
||||
|
||||
void session_set_direction(struct session *sess, enum session_direction dir);
|
||||
void session_set_current_flow_direction(struct session *sess, enum flow_direction dir);
|
||||
void session_set_state(struct session *sess, enum session_state state);
|
||||
void session_set_current_state(struct session *sess, enum session_state state);
|
||||
void session_set_type(struct session *sess, enum session_type type);
|
||||
void session_set_duplicate_traffic(struct session *sess);
|
||||
void session_set_closing_reason(struct session *sess, enum closing_reason reason);
|
||||
@@ -104,7 +104,6 @@ void session_get_route_ctx(const struct session *sess, enum flow_direction dir,
|
||||
|
||||
void session_set_first_packet(struct session *sess, enum flow_direction dir, const struct packet *pkt);
|
||||
void session_set_current_packet(struct session *sess, const struct packet *pkt);
|
||||
const struct packet *session_get_current_packet(const struct session *sess);
|
||||
|
||||
void session_set_user_data(struct session *sess, void *user_data);
|
||||
void *session_get_user_data(const struct session *sess);
|
||||
|
||||
@@ -163,6 +163,6 @@ void session_transition_log(struct session *sess, enum session_state curr_state,
|
||||
session_inputs_to_str(inputs, reason, sizeof(reason));
|
||||
SESSION_TRANSITION_LOG_INFO("%s session %lu %s (%s) %s -> %s",
|
||||
session_type_to_str(session_get_type(sess)),
|
||||
session_get_id(sess), session_get_tuple6_str(sess), reason,
|
||||
session_get_id(sess), session_get0_readable_addr(sess), reason,
|
||||
session_state_to_str(curr_state), session_state_to_str(next_state));
|
||||
}
|
||||
@@ -322,7 +322,7 @@ TEST(CASE, TCP_FAST_OPEN)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "2400:ac40:620:a4d8:484f:d2b0:d539:bd4c:51682 -> 2001:4860:4860::8844:853, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -332,7 +332,7 @@ TEST(CASE, TCP_FAST_OPEN)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -396,7 +396,7 @@ TEST(CASE, TCP_FAST_OPEN)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 1 + opts.tcp_init_timeout) == NULL); // opening -> closing
|
||||
sess = session_manager_get_expired_session(mgr, 1 + opts.tcp_init_timeout + opts.tcp_data_timeout); // closing -> closed
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -233,7 +233,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, OUT_OF_ORDER)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 7 + opts.tcp_data_timeout) == NULL); // active -> closing
|
||||
sess = session_manager_get_expired_session(mgr, 7 + opts.tcp_data_timeout + opts.tcp_data_timeout); // closing -> closed
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -322,7 +322,7 @@ TEST(SESS_MGR_TCP_REASSEMBLY, SEQ_WRAPAROUND)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 4 + opts.tcp_data_timeout) == NULL); // active -> closing
|
||||
sess = session_manager_get_expired_session(mgr, 4 + opts.tcp_data_timeout + opts.tcp_data_timeout); // closing -> closed
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -120,7 +120,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_FIN_FIN)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
@@ -130,7 +130,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_FIN_FIN)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -147,7 +147,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_FIN_FIN)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 3 + opts.tcp_time_wait_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -207,7 +207,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_RST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_RST);
|
||||
@@ -217,7 +217,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_RST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -234,7 +234,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_RST)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 3 + opts.tcp_unverified_rst_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_RST);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -294,7 +294,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_RST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_RST);
|
||||
@@ -304,7 +304,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_RST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -321,7 +321,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_RST)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 3 + opts.tcp_unverified_rst_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_RST);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -369,7 +369,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_DATA_TIMEOUT)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -422,7 +422,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_HALF_CLOSED_TIMEOUT)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
@@ -432,7 +432,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_HALF_CLOSED_TIMEOUT)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -449,7 +449,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_C2S_HALF_CLOSED_TIMEOUT)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 3 + opts.tcp_half_closed_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -502,7 +502,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_HALF_CLOSED_TIMEOUT)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_FIN);
|
||||
@@ -512,7 +512,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_HALF_CLOSED_TIMEOUT)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -529,7 +529,7 @@ TEST(TCP_ACTIVE_TO_CLOSING, BY_S2C_HALF_CLOSED_TIMEOUT)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 3 + opts.tcp_half_closed_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_FIN);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -79,7 +79,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -89,7 +89,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -107,7 +107,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 1 + opts.tcp_init_timeout) == NULL); // opening -> closing
|
||||
sess = session_manager_get_expired_session(mgr, 1 + opts.tcp_init_timeout + opts.tcp_data_timeout); // closing -> closed
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -157,7 +157,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "93.184.216.34:80 -> 192.168.38.105:60111, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -167,7 +167,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) == NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -185,7 +185,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 1 + opts.tcp_handshake_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 1 + opts.tcp_handshake_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -246,7 +246,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -256,7 +256,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -274,7 +274,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.tcp_handshake_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_handshake_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -346,7 +346,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -356,7 +356,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -374,7 +374,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_SYNACK_ACK)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 3 + opts.tcp_data_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 3 + opts.tcp_data_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -442,7 +442,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -452,7 +452,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -470,7 +470,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYN_RETRANSMISSION)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.tcp_init_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_init_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -539,7 +539,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "93.184.216.34:80 -> 192.168.38.105:60111, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -549,7 +549,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) == NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -567,7 +567,7 @@ TEST(TCP_INIT_TO_OPENING, BY_SYNACK_RETRANSMISSION)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.tcp_handshake_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_handshake_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -628,7 +628,7 @@ TEST(TCP_INIT_TO_OPENING, BY_C2S_ASMMETRIC)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -638,7 +638,7 @@ TEST(TCP_INIT_TO_OPENING, BY_C2S_ASMMETRIC)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -656,7 +656,7 @@ TEST(TCP_INIT_TO_OPENING, BY_C2S_ASMMETRIC)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -717,7 +717,7 @@ TEST(TCP_INIT_TO_OPENING, BY_S2C_ASMMETRIC)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "93.184.216.34:80 -> 192.168.38.105:60111, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -727,7 +727,7 @@ TEST(TCP_INIT_TO_OPENING, BY_S2C_ASMMETRIC)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) == NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -745,7 +745,7 @@ TEST(TCP_INIT_TO_OPENING, BY_S2C_ASMMETRIC)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -75,7 +75,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -85,7 +85,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -106,7 +106,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -116,7 +116,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -137,7 +137,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -147,7 +147,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -168,7 +168,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -178,7 +178,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -199,7 +199,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -209,7 +209,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -230,7 +230,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -240,7 +240,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -261,7 +261,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -271,7 +271,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -292,7 +292,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -302,7 +302,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -323,7 +323,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
@@ -333,7 +333,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -354,7 +354,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
@@ -364,7 +364,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -385,7 +385,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
@@ -395,7 +395,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1 + 1 + 1 + 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -411,7 +411,7 @@ TEST(TCP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING_TO_CLOSED, TEST)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 11 + opts.tcp_time_wait_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -89,7 +89,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYN_C2S_DATA)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -99,7 +99,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYN_C2S_DATA)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -117,7 +117,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYN_C2S_DATA)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -178,7 +178,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYNACK_S2C_DATA)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "93.184.216.34:80 -> 192.168.38.105:60111, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -188,7 +188,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYNACK_S2C_DATA)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1 + 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) == NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -206,7 +206,7 @@ TEST(TCP_OPENING_TO_ACTIVE, BY_SYNACK_S2C_DATA)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -101,7 +101,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
@@ -111,7 +111,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -128,7 +128,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_FIN_FIN)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 3 + opts.tcp_time_wait_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -196,7 +196,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_RST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_RST);
|
||||
@@ -206,7 +206,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_RST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -223,7 +223,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_RST)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_unverified_rst_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_RST);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -291,7 +291,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_RST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_RST);
|
||||
@@ -301,7 +301,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_RST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -318,7 +318,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_RST)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_unverified_rst_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_RST);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -375,7 +375,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_INIT_TIMEOUT)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 1 + opts.tcp_init_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 1 + opts.tcp_init_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -436,7 +436,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_HANDSHAKE_TIMEOUT)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -446,7 +446,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_HANDSHAKE_TIMEOUT)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -464,7 +464,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_HANDSHAKE_TIMEOUT)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.tcp_handshake_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_handshake_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -536,7 +536,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -546,7 +546,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -564,7 +564,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_DATA_TIMEOUT)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 3 + opts.tcp_data_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 3 + opts.tcp_data_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -625,7 +625,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_HALF_FIN)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
@@ -635,7 +635,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_HALF_FIN)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -652,7 +652,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_C2S_HALF_FIN)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_half_closed_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_CLIENT_FIN);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -713,7 +713,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_HALF_FIN)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:60111 -> 93.184.216.34:80, proto: 6, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_TCP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_FIN);
|
||||
@@ -723,7 +723,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_HALF_FIN)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -740,7 +740,7 @@ TEST(TCP_OPENING_TO_CLOSING, BY_S2C_HALF_FIN)
|
||||
// expire session
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_half_closed_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_SERVER_FIN);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -74,7 +74,7 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:61099 -> 121.14.154.93:53, proto: 17, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_UDP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -84,7 +84,7 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -104,7 +104,7 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:61099 -> 121.14.154.93:53, proto: 17, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_ACTIVE);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_UDP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -114,7 +114,7 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -132,7 +132,7 @@ TEST(UDP_INIT_TO_OPENING_TO_ACTIVE_TO_CLOSING, TEST)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.udp_data_timeout) == NULL); // active -> closing
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.udp_data_timeout + opts.udp_data_timeout); // closing -> closed
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -79,7 +79,7 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_C2S)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "192.168.38.105:61099 -> 121.14.154.93:53, proto: 17, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_UDP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -89,7 +89,7 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_C2S)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 0);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_C2S);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) != NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) == NULL);
|
||||
@@ -107,7 +107,7 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_C2S)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 1 + opts.udp_data_timeout) == NULL); // opening -> closing
|
||||
sess = session_manager_get_expired_session(mgr, 1 + opts.udp_data_timeout + opts.udp_data_timeout); // closing -> closed
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -158,7 +158,7 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_S2C)
|
||||
tuple6_to_str(session_get_tuple6(sess), buffer, sizeof(buffer));
|
||||
EXPECT_STREQ(buffer, "121.14.154.93:53 -> 192.168.38.105:61099, proto: 17, domain: 0");
|
||||
EXPECT_TRUE(session_get_tuple6_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_OPENING);
|
||||
EXPECT_TRUE(session_get_type(sess) == SESSION_TYPE_UDP);
|
||||
EXPECT_TRUE(session_has_duplicate_traffic(sess) == 0);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == 0);
|
||||
@@ -168,7 +168,7 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_S2C)
|
||||
EXPECT_TRUE(session_get_stat(sess, FLOW_DIRECTION_S2C, STAT_RAW_PACKETS_RECEIVED) == 1);
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_START));
|
||||
EXPECT_TRUE(session_get_timestamp(sess, SESSION_TIMESTAMP_LAST));
|
||||
EXPECT_TRUE(session_get_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get0_current_packet(sess) == &pkt);
|
||||
EXPECT_TRUE(session_get_current_flow_direction(sess) == FLOW_DIRECTION_S2C);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_C2S) == NULL);
|
||||
EXPECT_TRUE(session_get_first_packet(sess, FLOW_DIRECTION_S2C) != NULL);
|
||||
@@ -187,7 +187,7 @@ TEST(UDP_INIT_TO_OPENING_TO_CLOSING, BY_S2C)
|
||||
sess = session_manager_get_expired_session(mgr, 1 + opts.udp_data_timeout + opts.udp_data_timeout); // closing -> closed
|
||||
EXPECT_TRUE(sess);
|
||||
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
|
||||
|
||||
@@ -82,7 +82,7 @@ TEST(TIMEOUT, TCP_TIMEOUT_DATA)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.tcp_data_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -72,7 +72,7 @@ TEST(TIMEOUT, TCP_TIMEOUT_HANDSHAKE)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 1 + opts.tcp_handshake_timeout) == NULL);
|
||||
sess = session_manager_get_expired_session(mgr, 1 + opts.tcp_handshake_timeout + opts.tcp_data_timeout);
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -72,7 +72,7 @@ TEST(TIMEOUT, TCP_TIMEOUT_INIT)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 1 + opts.tcp_init_timeout) == NULL); // opening -> closing
|
||||
sess = session_manager_get_expired_session(mgr, 1 + opts.tcp_init_timeout + opts.tcp_data_timeout); // closing -> closed
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -71,7 +71,7 @@ TEST(TIMEOUT, UDP_TIMEOUT_DATA1)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 1 + opts.udp_data_timeout) == NULL); // opening -> closing
|
||||
sess = session_manager_get_expired_session(mgr, 1 + opts.udp_data_timeout + opts.udp_data_timeout); // closing -> closed
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
@@ -118,7 +118,7 @@ TEST(TIMEOUT, UDP_TIMEOUT_DATA2)
|
||||
EXPECT_TRUE(session_manager_get_expired_session(mgr, 2 + opts.udp_data_timeout) == NULL); // active -> closing
|
||||
sess = session_manager_get_expired_session(mgr, 2 + opts.udp_data_timeout + opts.udp_data_timeout); // closing -> closed
|
||||
EXPECT_TRUE(sess);
|
||||
EXPECT_TRUE(session_get_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_current_state(sess) == SESSION_STATE_CLOSED);
|
||||
EXPECT_TRUE(session_get_closing_reason(sess) == CLOSING_BY_TIMEOUT);
|
||||
session_print(sess);
|
||||
// free session
|
||||
|
||||
@@ -5,4 +5,3 @@ add_executable(stellar main.cpp)
|
||||
target_link_libraries(stellar core)
|
||||
target_link_libraries(stellar "-rdynamic")
|
||||
install(TARGETS stellar RUNTIME DESTINATION bin COMPONENT Program)
|
||||
|
||||
|
||||
@@ -51,7 +51,7 @@ static inline void free_evicted_sessions(struct session_manager *sess_mgr, uint6
|
||||
if (sess)
|
||||
{
|
||||
plugin_ctx = session_get_user_data(sess);
|
||||
plugin_manager_session_runtime_free((struct plugin_manager_runtime*)plugin_ctx);
|
||||
plugin_manager_session_runtime_free((struct plugin_manager_runtime *)plugin_ctx);
|
||||
session_manager_free_session(sess_mgr, sess);
|
||||
}
|
||||
else
|
||||
@@ -71,7 +71,7 @@ static inline void free_expired_sessions(struct session_manager *sess_mgr, uint6
|
||||
if (sess)
|
||||
{
|
||||
plugin_ctx = session_get_user_data(sess);
|
||||
plugin_manager_session_runtime_free((struct plugin_manager_runtime*)plugin_ctx);
|
||||
plugin_manager_session_runtime_free((struct plugin_manager_runtime *)plugin_ctx);
|
||||
session_manager_free_session(sess_mgr, sess);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -32,7 +32,7 @@ TEST(INJECT_IPV4_BASED_TCP_RST, AFTER_RECV_SYN_ACK)
|
||||
.s2c_output_pcap = "inject-192.0.2.110:80-192.0.2.211:59942-2.pcap",
|
||||
|
||||
// packet injector command
|
||||
.packet_injector_cmd = {"./packet_injector", "-t", "tcp-rst", "-c", "s2c-packet", "-n", "1"},
|
||||
.packet_injector_cmd = {"./packet_injector", "-t", "tcp-rst", "-c", "s2c-packet", "-n", "1"},
|
||||
.diff_skip_pattern = "-I frame.time -I frame.time_epoch -I ip.id -I ip.ttl -I ip.checksum -I tcp.checksum -I tcp.window_size",
|
||||
};
|
||||
|
||||
@@ -68,7 +68,7 @@ TEST(INJECT_IPV4_BASED_TCP_RST, AFTER_RECV_SUB_ACK)
|
||||
.s2c_output_pcap = "inject-192.0.2.110:80-192.0.2.211:42242-2.pcap",
|
||||
|
||||
// packet injector command
|
||||
.packet_injector_cmd = {"./packet_injector", "-t", "tcp-rst", "-c", "c2s-packet", "-n", "2"},
|
||||
.packet_injector_cmd = {"./packet_injector", "-t", "tcp-rst", "-c", "c2s-packet", "-n", "2"},
|
||||
.diff_skip_pattern = "-I frame.time -I frame.time_epoch -I ip.id -I ip.ttl -I ip.checksum -I tcp.checksum -I tcp.window_size",
|
||||
};
|
||||
|
||||
@@ -104,7 +104,7 @@ TEST(INJECT_IPV4_BASED_TCP_RST, AFTER_RECV_C2S_FIRST_PAYLOAD)
|
||||
.s2c_output_pcap = "inject-192.0.2.110:80-192.0.2.211:35116-2.pcap",
|
||||
|
||||
// packet injector command
|
||||
.packet_injector_cmd = {"./packet_injector", "-t", "tcp-rst", "-c", "c2s-packet", "-n", "3"},
|
||||
.packet_injector_cmd = {"./packet_injector", "-t", "tcp-rst", "-c", "c2s-packet", "-n", "3"},
|
||||
.diff_skip_pattern = "-I frame.time -I frame.time_epoch -I ip.id -I ip.ttl -I ip.checksum -I tcp.checksum -I tcp.window_size",
|
||||
};
|
||||
|
||||
@@ -140,7 +140,7 @@ TEST(INJECT_IPV4_BASED_TCP_RST, AFTER_RECV_S2C_FIRST_PAYLOAD)
|
||||
.s2c_output_pcap = "inject-192.0.2.110:80-192.0.2.211:54408-2.pcap",
|
||||
|
||||
// packet injector command
|
||||
.packet_injector_cmd = "./packet_injector -t tcp-rst -c s2c-packet -n 3",
|
||||
.packet_injector_cmd = {"./packet_injector", "-t", "tcp-rst", "-c", "s2c-packet", "-n", "3"},
|
||||
.diff_skip_pattern = "-I frame.time -I frame.time_epoch -I ip.id -I ip.ttl -I ip.checksum -I tcp.checksum -I tcp.window_size",
|
||||
};
|
||||
|
||||
|
||||
@@ -53,22 +53,22 @@ struct inject_rule
|
||||
static void inject_packet_plugin(struct session *sess, int topic_id, const void *msg, void *per_session_ctx, void *plugin_env)
|
||||
{
|
||||
char buffer[1024] = {0};
|
||||
struct inject_rule *p_rule = &rule;
|
||||
struct packet *pkt = (struct packet *)msg;
|
||||
const struct tuple6 *tuple = session_get_tuple6(sess);
|
||||
if (rule->ip_type == 4 &&
|
||||
memcmp(&tuple->src_addr.v4, &rule->v4, sizeof(struct in_addr)) &&
|
||||
memcmp(&tuple->dst_addr.v4, &rule->v4, sizeof(struct in_addr)))
|
||||
if (p_rule->ip_type == 4 &&
|
||||
memcmp(&tuple->src_addr.v4, &p_rule->v4, sizeof(struct in_addr)) &&
|
||||
memcmp(&tuple->dst_addr.v4, &p_rule->v4, sizeof(struct in_addr)))
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (rule->ip_type == 6 &&
|
||||
memcmp(&tuple->src_addr.v6, &rule->v6, sizeof(struct in6_addr)) &&
|
||||
memcmp(&tuple->dst_addr.v6, &rule->v6, sizeof(struct in6_addr)))
|
||||
if (p_rule->ip_type == 6 &&
|
||||
memcmp(&tuple->src_addr.v6, &p_rule->v6, sizeof(struct in6_addr)) &&
|
||||
memcmp(&tuple->dst_addr.v6, &p_rule->v6, sizeof(struct in6_addr)))
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (rule->port != 0 &&
|
||||
tuple->src_port != rule->port &&
|
||||
tuple->dst_port != rule->port)
|
||||
if (p_rule->port != 0 && tuple->src_port != p_rule->port && tuple->dst_port != p_rule->port)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -187,11 +187,11 @@ void packet_injector_test_frame_run(struct packet_injector_case *test)
|
||||
EXPECT_TRUE(replace_file_string(config_file_abs_path, "dumpfile_dir = \"/tmp/dumpfile/\"", temp) == 0);
|
||||
|
||||
// run packet injector
|
||||
//system_cmd("cd %s && %s && cd ..", test->work_dir, test->packet_injector_cmd);
|
||||
char cwd[1024];
|
||||
getcwd(cwd, sizeof(cwd));
|
||||
chdir(test->work_dir);
|
||||
inject_packet_main(args_len(test->packet_injector_cmd),(char**)test->packet_injector_cmd);
|
||||
inject_packet_main(args_len(test->packet_injector_cmd), (char **)test->packet_injector_cmd);
|
||||
|
||||
// compare pcap
|
||||
if (test->c2s_output_pcap && test->c2s_expect_pcap)
|
||||
{
|
||||
@@ -215,5 +215,5 @@ void packet_injector_test_frame_run(struct packet_injector_case *test)
|
||||
{
|
||||
system_cmd("rm -rf %s", test->work_dir);
|
||||
}
|
||||
chdir(cwd);
|
||||
chdir(cwd);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user