[PATCH]add maat_state_get_last_hit_group_id_cnt API

This commit is contained in:
liuwentan
2023-12-13 18:15:28 +08:00
parent b95135101f
commit df7505fa7f
5 changed files with 25 additions and 3 deletions

View File

@@ -349,6 +349,9 @@ size_t maat_state_get_indirect_hit_group_cnt(struct maat_state *state);
int maat_state_get_last_hit_group_ids(struct maat_state *state,
long long *group_id_array,
size_t array_size);
size_t maat_state_get_last_hit_group_id_cnt(struct maat_state *state);
#ifdef __cplusplus
}
#endif

View File

@@ -123,6 +123,8 @@ size_t compile_state_get_last_hit_group_id(struct compile_state *compile_state,
long long *group_id_arary,
size_t array_size);
size_t compile_state_get_last_hit_group_id_cnt(struct compile_state *compile_state);
int compile_state_get_compile_table_id(struct compile_state *compile_state,
long long compile_id);

View File

@@ -2151,4 +2151,13 @@ int maat_state_get_last_hit_group_ids(struct maat_state *state,
return compile_state_get_last_hit_group_id(state->compile_state,
group_id_array, array_size);
}
size_t maat_state_get_last_hit_group_id_cnt(struct maat_state *state)
{
if (NULL == state || NULL == state->compile_state) {
return 0;
}
return compile_state_get_last_hit_group_id_cnt(state->compile_state);
}

View File

@@ -2578,6 +2578,11 @@ size_t compile_state_get_last_hit_group_id(struct compile_state *compile_state,
return i;
}
size_t compile_state_get_last_hit_group_id_cnt(struct compile_state *compile_state)
{
return utarray_len(compile_state->last_hit_group_ids);
}
size_t compile_state_get_direct_hit_groups(struct compile_state *compile_state,
struct maat_hit_group *group_array,
size_t array_size)

View File

@@ -8877,8 +8877,9 @@ TEST_F(MaatCmdTest, HitGroup) {
EXPECT_EQ(hit_groups[0].group_id, group11_id);
EXPECT_EQ(hit_groups[0].vtable_id, http_req_table_id);
size_t n_last_hit_group = maat_state_get_last_hit_group_id_cnt(state);
long long last_hit_group_ids[128] = {0};
size_t n_last_hit_group = maat_state_get_last_hit_group_ids(state, last_hit_group_ids, 128);
maat_state_get_last_hit_group_ids(state, last_hit_group_ids, 128);
EXPECT_EQ(n_last_hit_group, 2);
EXPECT_EQ(last_hit_group_ids[0], group1_id);
EXPECT_EQ(last_hit_group_ids[1], group11_id);
@@ -8922,7 +8923,8 @@ TEST_F(MaatCmdTest, HitGroup) {
EXPECT_EQ(hit_groups[0].group_id, group21_id);
EXPECT_EQ(hit_groups[0].vtable_id, http_res_table_id);
n_last_hit_group = maat_state_get_last_hit_group_ids(state, last_hit_group_ids, 128);
n_last_hit_group = maat_state_get_last_hit_group_id_cnt(state);
maat_state_get_last_hit_group_ids(state, last_hit_group_ids, 128);
EXPECT_EQ(n_last_hit_group, 2);
EXPECT_EQ(last_hit_group_ids[0], group2_id);
EXPECT_EQ(last_hit_group_ids[1], group21_id);
@@ -8986,7 +8988,8 @@ TEST_F(MaatCmdTest, HitGroup) {
EXPECT_EQ(hit_groups[0].group_id, group1_id);
EXPECT_EQ(hit_groups[0].vtable_id, keywords_table_id); //physical table(keywords_table) vtable_id is 0
n_last_hit_group = maat_state_get_last_hit_group_ids(state, last_hit_group_ids, 128);
n_last_hit_group = maat_state_get_last_hit_group_id_cnt(state);
maat_state_get_last_hit_group_ids(state, last_hit_group_ids, 128);
EXPECT_EQ(n_last_hit_group, 2);
EXPECT_EQ(last_hit_group_ids[0], group1_id);
EXPECT_EQ(last_hit_group_ids[1], group11_id);