modify interval table and fix some test case
This commit is contained in:
@@ -568,12 +568,8 @@ write_interval_line(cJSON *region_json, struct iris_description *p_iris,
|
|||||||
cmd_cnt++;
|
cmd_cnt++;
|
||||||
}
|
}
|
||||||
|
|
||||||
json_cmd[cmd_cnt].json_string = "low_boundary";
|
json_cmd[cmd_cnt].json_string = "interval";
|
||||||
json_cmd[cmd_cnt].json_type = cJSON_Number;
|
json_cmd[cmd_cnt].json_type = cJSON_String;
|
||||||
cmd_cnt++;
|
|
||||||
|
|
||||||
json_cmd[cmd_cnt].json_string = "up_boundary";
|
|
||||||
json_cmd[cmd_cnt].json_type = cJSON_Number;
|
|
||||||
cmd_cnt++;
|
cmd_cnt++;
|
||||||
|
|
||||||
json_cmd[cmd_cnt].json_string = "is_valid";
|
json_cmd[cmd_cnt].json_string = "is_valid";
|
||||||
|
|||||||
@@ -25,8 +25,7 @@ struct interval_schema {
|
|||||||
int item_id_column;
|
int item_id_column;
|
||||||
int group_id_column;
|
int group_id_column;
|
||||||
int district_column;
|
int district_column;
|
||||||
int low_boundary_column;
|
int interval_column;
|
||||||
int up_boundary_column;
|
|
||||||
int table_id;
|
int table_id;
|
||||||
struct table_manager *ref_tbl_mgr;
|
struct table_manager *ref_tbl_mgr;
|
||||||
};
|
};
|
||||||
@@ -124,22 +123,12 @@ void *interval_schema_new(cJSON *json, struct table_manager *tbl_mgr,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
custom_item = cJSON_GetObjectItem(item, "low_boundary");
|
custom_item = cJSON_GetObjectItem(item, "interval");
|
||||||
if (custom_item != NULL && custom_item->type == cJSON_Number) {
|
if (custom_item != NULL && custom_item->type == cJSON_Number) {
|
||||||
schema->low_boundary_column = custom_item->valueint;
|
schema->interval_column = custom_item->valueint;
|
||||||
} else {
|
} else {
|
||||||
log_fatal(logger, MODULE_INTERVAL,
|
log_fatal(logger, MODULE_INTERVAL,
|
||||||
"[%s:%d] interval table:<%s> schema has no low_boundary column",
|
"[%s:%d] interval table:<%s> schema has no interval column",
|
||||||
__FUNCTION__, __LINE__, table_name);
|
|
||||||
goto error;
|
|
||||||
}
|
|
||||||
|
|
||||||
custom_item = cJSON_GetObjectItem(item, "up_boundary");
|
|
||||||
if (custom_item != NULL && custom_item->type == cJSON_Number) {
|
|
||||||
schema->up_boundary_column = custom_item->valueint;
|
|
||||||
} else {
|
|
||||||
log_fatal(logger, MODULE_INTERVAL,
|
|
||||||
"[%s:%d] interval table:<%s> schema has no up_boundary column",
|
|
||||||
__FUNCTION__, __LINE__, table_name);
|
__FUNCTION__, __LINE__, table_name);
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
@@ -287,6 +276,7 @@ interval_item_new(struct interval_schema *schema, const char *table_name,
|
|||||||
size_t column_offset = 0;
|
size_t column_offset = 0;
|
||||||
size_t column_len = 0;
|
size_t column_len = 0;
|
||||||
enum table_type table_type = TABLE_TYPE_INVALID;
|
enum table_type table_type = TABLE_TYPE_INVALID;
|
||||||
|
char port_str[16] = {0};
|
||||||
struct interval_item *item = ALLOC(struct interval_item, 1);
|
struct interval_item *item = ALLOC(struct interval_item, 1);
|
||||||
|
|
||||||
int ret = get_column_pos(line, schema->item_id_column, &column_offset,
|
int ret = get_column_pos(line, schema->item_id_column, &column_offset,
|
||||||
@@ -334,23 +324,20 @@ interval_item_new(struct interval_schema *schema, const char *table_name,
|
|||||||
item->district_id = DISTRICT_ANY;
|
item->district_id = DISTRICT_ANY;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = get_column_pos(line, schema->low_boundary_column, &column_offset, &column_len);
|
ret = get_column_pos(line, schema->interval_column, &column_offset, &column_len);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
log_fatal(interval_rt->logger, MODULE_INTERVAL,
|
log_fatal(interval_rt->logger, MODULE_INTERVAL,
|
||||||
"[%s:%d] interval table:<%s> has no low_boundary in line:%s",
|
"[%s:%d] interval table:<%s> has no interval in line:%s",
|
||||||
__FUNCTION__, __LINE__, table_name, line);
|
__FUNCTION__, __LINE__, table_name, line);
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
item->low_boundary = atoi(line + column_offset);
|
memcpy(port_str, line + column_offset, column_len);
|
||||||
|
if (strchr(port_str, '-') != NULL) {
|
||||||
ret = get_column_pos(line, schema->up_boundary_column, &column_offset, &column_len);
|
sscanf(port_str, "%d-%d", &item->low_boundary, &item->up_boundary);
|
||||||
if (ret < 0) {
|
} else {
|
||||||
log_fatal(interval_rt->logger, MODULE_INTERVAL,
|
item->low_boundary = atoi(port_str);
|
||||||
"[%s:%d] interval table:<%s> has no up_boundary in line:%s",
|
item->up_boundary = item->low_boundary;
|
||||||
__FUNCTION__, __LINE__, table_name, line);
|
|
||||||
goto error;
|
|
||||||
}
|
}
|
||||||
item->up_boundary = atoi(line + column_offset);
|
|
||||||
|
|
||||||
return item;
|
return item;
|
||||||
error:
|
error:
|
||||||
|
|||||||
@@ -75,12 +75,11 @@
|
|||||||
"table_id":6,
|
"table_id":6,
|
||||||
"table_name":"NTC_UNIVERSAL_PROTO_TYPE",
|
"table_name":"NTC_UNIVERSAL_PROTO_TYPE",
|
||||||
"table_type":"interval",
|
"table_type":"interval",
|
||||||
"valid_column":5,
|
"valid_column":4,
|
||||||
"custom": {
|
"custom": {
|
||||||
"item_id":1,
|
"item_id":1,
|
||||||
"group_id":2,
|
"group_id":2,
|
||||||
"low_boundary":3,
|
"interval":3
|
||||||
"up_boundary":4
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ TEST(ipv6_matcher_match, OneSingleIPv6Rule) {
|
|||||||
|
|
||||||
struct ip_data data;
|
struct ip_data data;
|
||||||
data.type = IPv6;
|
data.type = IPv6;
|
||||||
inet_pton(AF_INET6, ip1_str, data.ipv6);
|
inet_pton(AF_INET6, "1001:da8:205:1::101", data.ipv6);
|
||||||
ipv6_ntoh(data.ipv6);
|
ipv6_ntoh(data.ipv6);
|
||||||
|
|
||||||
struct scan_result results[MAX_ARRAY_SIZE];
|
struct scan_result results[MAX_ARRAY_SIZE];
|
||||||
|
|||||||
@@ -8841,7 +8841,7 @@ TEST_F(MaatCmd, GroupInMassCompiles) {
|
|||||||
long long group3_id = maat_cmd_incrby(maat_inst, "SEQUENCE_GROUP", 1);
|
long long group3_id = maat_cmd_incrby(maat_inst, "SEQUENCE_GROUP", 1);
|
||||||
long long item3_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
long long item3_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
||||||
ret = interval_table_set_line(maat_inst, table_appid, MAAT_OP_ADD, item3_id,
|
ret = interval_table_set_line(maat_inst, table_appid, MAAT_OP_ADD, item3_id,
|
||||||
group3_id, 100, 100, NULL, 0);
|
group3_id, "100", NULL, 0);
|
||||||
EXPECT_EQ(ret, 1);
|
EXPECT_EQ(ret, 1);
|
||||||
|
|
||||||
/* item_url1 -> group1 -> compile[0 ~ COMPILE_ID_NUMS]
|
/* item_url1 -> group1 -> compile[0 ~ COMPILE_ID_NUMS]
|
||||||
@@ -10309,7 +10309,7 @@ TEST_F(MaatCmd, SameScanStatusWhenClauseUpdate_TSG6419) {
|
|||||||
|
|
||||||
long long item21_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
long long item21_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
||||||
ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD,
|
ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD,
|
||||||
item21_id, group21_id, 31, 31, NULL, 0);
|
item21_id, group21_id, "31", NULL, 0);
|
||||||
EXPECT_EQ(ret, 1);
|
EXPECT_EQ(ret, 1);
|
||||||
sleep(WAIT_FOR_EFFECTIVE_S * 2);
|
sleep(WAIT_FOR_EFFECTIVE_S * 2);
|
||||||
|
|
||||||
@@ -10356,7 +10356,7 @@ TEST_F(MaatCmd, SameScanStatusWhenClauseUpdate_TSG6419) {
|
|||||||
|
|
||||||
long long item22_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
long long item22_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
||||||
ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD,
|
ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD,
|
||||||
item22_id, group22_id, 32, 32, NULL, 0);
|
item22_id, group22_id, "32", NULL, 0);
|
||||||
EXPECT_EQ(ret, 1);
|
EXPECT_EQ(ret, 1);
|
||||||
|
|
||||||
sleep(WAIT_FOR_EFFECTIVE_S * 2);
|
sleep(WAIT_FOR_EFFECTIVE_S * 2);
|
||||||
@@ -10418,7 +10418,7 @@ TEST_F(MaatCmd, GroupEdit) {
|
|||||||
|
|
||||||
long long item21_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
long long item21_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
||||||
ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD,
|
ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD,
|
||||||
item21_id, group21_id, 41, 41, NULL, 0);
|
item21_id, group21_id, "41", NULL, 0);
|
||||||
EXPECT_EQ(ret, 1);
|
EXPECT_EQ(ret, 1);
|
||||||
|
|
||||||
sleep(WAIT_FOR_EFFECTIVE_S * 2);
|
sleep(WAIT_FOR_EFFECTIVE_S * 2);
|
||||||
@@ -10458,10 +10458,11 @@ TEST_F(MaatCmd, GroupEdit) {
|
|||||||
item21 -> group21 -> clause2 _/
|
item21 -> group21 -> clause2 _/
|
||||||
item22 -> /
|
item22 -> /
|
||||||
*/
|
*/
|
||||||
|
char scan_app_id_str[8] = {0};
|
||||||
|
snprintf(scan_app_id_str, sizeof(scan_app_id_str), "%d", scan_app_id);
|
||||||
long long item22_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
long long item22_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
||||||
ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD,
|
ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD,
|
||||||
item22_id, group21_id, scan_app_id,
|
item22_id, group21_id, scan_app_id_str, NULL, 0);
|
||||||
scan_app_id, NULL, 0);
|
|
||||||
EXPECT_EQ(ret, 1);
|
EXPECT_EQ(ret, 1);
|
||||||
|
|
||||||
sleep(WAIT_FOR_EFFECTIVE_S);
|
sleep(WAIT_FOR_EFFECTIVE_S);
|
||||||
@@ -10497,8 +10498,7 @@ TEST_F(MaatCmd, GroupEdit) {
|
|||||||
item21 -> group21 -> clause2 _/
|
item21 -> group21 -> clause2 _/
|
||||||
*/
|
*/
|
||||||
ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_DEL,
|
ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_DEL,
|
||||||
item22_id, group21_id, scan_app_id,
|
item22_id, group21_id, scan_app_id_str, NULL, 0);
|
||||||
scan_app_id, NULL, 0);
|
|
||||||
EXPECT_EQ(ret, 1);
|
EXPECT_EQ(ret, 1);
|
||||||
|
|
||||||
sleep(WAIT_FOR_EFFECTIVE_S);
|
sleep(WAIT_FOR_EFFECTIVE_S);
|
||||||
|
|||||||
@@ -91,8 +91,10 @@ test_add_integer_command(struct maat *maat_inst, const char *table_name,
|
|||||||
EXPECT_EQ(ret, 1);
|
EXPECT_EQ(ret, 1);
|
||||||
|
|
||||||
long long item_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
long long item_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1);
|
||||||
|
char interval_range_str[64] = {0};
|
||||||
|
snprintf(interval_range_str, sizeof(interval_range_str), "%d-%d", low_boundary, up_boundary);
|
||||||
ret = interval_table_set_line(maat_inst, table_name, MAAT_OP_ADD, item_id,
|
ret = interval_table_set_line(maat_inst, table_name, MAAT_OP_ADD, item_id,
|
||||||
group_id, low_boundary, up_boundary, NULL, 0);
|
group_id, interval_range_str, NULL, 0);
|
||||||
EXPECT_EQ(ret, 1);
|
EXPECT_EQ(ret, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -137,8 +137,7 @@
|
|||||||
"table_type": "interval_plus",
|
"table_type": "interval_plus",
|
||||||
"table_content": {
|
"table_content": {
|
||||||
"district": "fqdn_cat_id",
|
"district": "fqdn_cat_id",
|
||||||
"low_boundary": 1724,
|
"interval": "1724"
|
||||||
"up_boundary": 1724
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -297,8 +296,7 @@
|
|||||||
"table_name": "CONTENT_SIZE",
|
"table_name": "CONTENT_SIZE",
|
||||||
"table_type": "interval",
|
"table_type": "interval",
|
||||||
"table_content": {
|
"table_content": {
|
||||||
"low_boundary": 100,
|
"interval": "100-500"
|
||||||
"up_boundary": 500
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -368,8 +366,7 @@
|
|||||||
"table_name": "CONTENT_SIZE",
|
"table_name": "CONTENT_SIZE",
|
||||||
"table_type": "interval",
|
"table_type": "interval",
|
||||||
"table_content": {
|
"table_content": {
|
||||||
"low_boundary": 2014,
|
"interval": "2014-2016"
|
||||||
"up_boundary": 2016
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -1944,8 +1941,7 @@
|
|||||||
"table_type": "interval_plus",
|
"table_type": "interval_plus",
|
||||||
"table_content": {
|
"table_content": {
|
||||||
"district": "interval.plus",
|
"district": "interval.plus",
|
||||||
"low_boundary": 2020,
|
"interval": "2020"
|
||||||
"up_boundary": 2020
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -3039,8 +3035,7 @@
|
|||||||
"table_type": "interval_plus",
|
"table_type": "interval_plus",
|
||||||
"table_content": {
|
"table_content": {
|
||||||
"district": "interval.plus",
|
"district": "interval.plus",
|
||||||
"low_boundary": 2020,
|
"interval": "2020"
|
||||||
"up_boundary": 2020
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -3116,8 +3111,7 @@
|
|||||||
"table_name": "INTEGER_PERF_CONFIG",
|
"table_name": "INTEGER_PERF_CONFIG",
|
||||||
"table_type": "interval",
|
"table_type": "interval",
|
||||||
"table_content": {
|
"table_content": {
|
||||||
"low_boundary": 3000,
|
"interval": "3000"
|
||||||
"up_boundary": 3000
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -3333,8 +3327,7 @@
|
|||||||
"table_name": "CONTENT_SIZE",
|
"table_name": "CONTENT_SIZE",
|
||||||
"table_type": "interval",
|
"table_type": "interval",
|
||||||
"table_content": {
|
"table_content": {
|
||||||
"low_boundary": 3000,
|
"interval": "3000"
|
||||||
"up_boundary": 3000
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1,24 +1,24 @@
|
|||||||
0000000023
|
0000000023
|
||||||
939 922 21 21 1
|
939 922 21 1
|
||||||
978 963 21 21 1
|
978 963 21 1
|
||||||
743 727 20 20 1
|
743 727 20 1
|
||||||
968 951 21 21 1
|
968 951 21 1
|
||||||
996 981 5 5 1
|
996 981 5 1
|
||||||
853 836 10 10 1
|
853 836 10 1
|
||||||
629 613 20 20 1
|
629 613 20 1
|
||||||
620 604 20 20 1
|
620 604 20 1
|
||||||
626 610 20 20 1
|
626 610 20 1
|
||||||
998 983 4 4 1
|
998 983 4 1
|
||||||
864 847 7 7 1
|
864 847 7 1
|
||||||
932 915 21 21 1
|
932 915 21 1
|
||||||
987 972 21 21 1
|
987 972 21 1
|
||||||
866 849 5 5 1
|
866 849 5 1
|
||||||
861 844 7 7 1
|
861 844 7 1
|
||||||
740 724 20 20 1
|
740 724 20 1
|
||||||
993 978 21 21 1
|
993 978 21 1
|
||||||
848 831 6 6 1
|
848 831 6 1
|
||||||
1001 986 21 21 1
|
1001 986 21 1
|
||||||
850 833 6 6 1
|
850 833 6 1
|
||||||
868 851 5 5 1
|
868 851 5 1
|
||||||
623 607 20 20 1
|
623 607 20 1
|
||||||
975 960 21 21 1
|
975 960 21 1
|
||||||
|
|||||||
@@ -174,12 +174,11 @@
|
|||||||
"table_id":13,
|
"table_id":13,
|
||||||
"table_name":"CONTENT_SIZE",
|
"table_name":"CONTENT_SIZE",
|
||||||
"table_type":"interval",
|
"table_type":"interval",
|
||||||
"valid_column":5,
|
"valid_column":4,
|
||||||
"custom": {
|
"custom": {
|
||||||
"item_id":1,
|
"item_id":1,
|
||||||
"group_id":2,
|
"group_id":2,
|
||||||
"low_boundary":3,
|
"interval":3
|
||||||
"up_boundary":4
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -417,13 +416,12 @@
|
|||||||
"table_id":35,
|
"table_id":35,
|
||||||
"table_name":"INTERGER_PLUS",
|
"table_name":"INTERGER_PLUS",
|
||||||
"table_type":"interval_plus",
|
"table_type":"interval_plus",
|
||||||
"valid_column":6,
|
"valid_column":5,
|
||||||
"custom": {
|
"custom": {
|
||||||
"item_id":1,
|
"item_id":1,
|
||||||
"group_id":2,
|
"group_id":2,
|
||||||
"district":3,
|
"district":3,
|
||||||
"low_boundary":4,
|
"interval":4
|
||||||
"up_boundary":5
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -442,12 +440,11 @@
|
|||||||
"table_id":37,
|
"table_id":37,
|
||||||
"table_name":"APP_ID",
|
"table_name":"APP_ID",
|
||||||
"table_type":"interval",
|
"table_type":"interval",
|
||||||
"valid_column":5,
|
"valid_column":4,
|
||||||
"custom": {
|
"custom": {
|
||||||
"item_id":1,
|
"item_id":1,
|
||||||
"group_id":2,
|
"group_id":2,
|
||||||
"low_boundary":3,
|
"interval":3
|
||||||
"up_boundary":4
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -468,12 +465,11 @@
|
|||||||
"table_id":39,
|
"table_id":39,
|
||||||
"table_name":"EMPTY_INTERGER",
|
"table_name":"EMPTY_INTERGER",
|
||||||
"table_type":"interval",
|
"table_type":"interval",
|
||||||
"valid_column":5,
|
"valid_column":4,
|
||||||
"custom": {
|
"custom": {
|
||||||
"item_id":1,
|
"item_id":1,
|
||||||
"group_id":2,
|
"group_id":2,
|
||||||
"low_boundary":3,
|
"interval":3
|
||||||
"up_boundary":4
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -572,12 +568,11 @@
|
|||||||
"table_id":48,
|
"table_id":48,
|
||||||
"table_name":"INTEGER_PERF_CONFIG",
|
"table_name":"INTEGER_PERF_CONFIG",
|
||||||
"table_type":"interval",
|
"table_type":"interval",
|
||||||
"valid_column":5,
|
"valid_column":4,
|
||||||
"custom": {
|
"custom": {
|
||||||
"item_id":1,
|
"item_id":1,
|
||||||
"group_id":2,
|
"group_id":2,
|
||||||
"low_boundary":3,
|
"interval":3
|
||||||
"up_boundary":4
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -242,8 +242,7 @@ int expr_table_set_line(struct maat *maat_inst, const char *table_name,
|
|||||||
|
|
||||||
int interval_table_set_line(struct maat *maat_inst, const char *table_name,
|
int interval_table_set_line(struct maat *maat_inst, const char *table_name,
|
||||||
enum maat_operation op, long long item_id, long long group_id,
|
enum maat_operation op, long long item_id, long long group_id,
|
||||||
unsigned int low_boundary, unsigned int up_boundary,
|
const char *port_str, const char *district, int expire_after)
|
||||||
const char *district, int expire_after)
|
|
||||||
{
|
{
|
||||||
char table_line[1024] = {0};
|
char table_line[1024] = {0};
|
||||||
int table_id = maat_get_table_id(maat_inst, table_name);
|
int table_id = maat_get_table_id(maat_inst, table_name);
|
||||||
@@ -257,11 +256,11 @@ int interval_table_set_line(struct maat *maat_inst, const char *table_name,
|
|||||||
table_type == TABLE_TYPE_INTERVAL_PLUS);
|
table_type == TABLE_TYPE_INTERVAL_PLUS);
|
||||||
|
|
||||||
if (table_type == TABLE_TYPE_INTERVAL_PLUS) {
|
if (table_type == TABLE_TYPE_INTERVAL_PLUS) {
|
||||||
sprintf(table_line, "%lld\t%lld\t%s\t%u\t%u\t%d",
|
sprintf(table_line, "%lld\t%lld\t%s\t%s\t%d",
|
||||||
item_id, group_id, district, low_boundary, up_boundary, op);
|
item_id, group_id, district, port_str, op);
|
||||||
} else {
|
} else {
|
||||||
sprintf(table_line, "%lld\t%lld\t%u\t%u\t%d",
|
sprintf(table_line, "%lld\t%lld\t%s\t%d",
|
||||||
item_id, group_id, low_boundary, up_boundary, op);
|
item_id, group_id, port_str, op);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct maat_cmd_line line_rule;
|
struct maat_cmd_line line_rule;
|
||||||
|
|||||||
@@ -36,9 +36,8 @@ int expr_table_set_line(struct maat *maat_inst, const char *table_name,
|
|||||||
|
|
||||||
int interval_table_set_line(struct maat *maat_inst, const char *table_name,
|
int interval_table_set_line(struct maat *maat_inst, const char *table_name,
|
||||||
enum maat_operation op, long long item_id,
|
enum maat_operation op, long long item_id,
|
||||||
long long group_id, unsigned int low_boundary,
|
long long group_id, const char *port_str,
|
||||||
unsigned int up_boundary, const char *district,
|
const char *district, int expire_after);
|
||||||
int expire_after);
|
|
||||||
|
|
||||||
int ip_table_set_line(struct maat *maat_inst, const char *table_name,
|
int ip_table_set_line(struct maat *maat_inst, const char *table_name,
|
||||||
enum maat_operation op, long long item_id,
|
enum maat_operation op, long long item_id,
|
||||||
|
|||||||
@@ -3,12 +3,10 @@
|
|||||||
"table_id": 42,
|
"table_id": 42,
|
||||||
"table_name":"TSG_IP_LOCATION_BUILT_IN",
|
"table_name":"TSG_IP_LOCATION_BUILT_IN",
|
||||||
"table_type":"ip_plugin",
|
"table_type":"ip_plugin",
|
||||||
"valid_column":18,
|
"valid_column":17,
|
||||||
"custom": {
|
"custom": {
|
||||||
"item_id":1,
|
"item_id":1,
|
||||||
"ip_type":3,
|
"ip":4
|
||||||
"start_ip":4,
|
|
||||||
"end_ip":5
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user