add session-traffic-reset command

This commit is contained in:
Christian Giese
2023-02-14 10:21:25 +00:00
parent 20e58fb98b
commit d44eda8dca
4 changed files with 31 additions and 0 deletions
+1
View File
@@ -182,6 +182,7 @@ struct action actions[] = {
{"session-traffic-start", bbl_session_ctrl_traffic_start, false},
{"session-traffic-disabled", bbl_session_ctrl_traffic_stop, false},
{"session-traffic-stop", bbl_session_ctrl_traffic_stop, false},
{"session-traffic-reset", bbl_session_ctrl_traffic_reset, false},
{"session-streams", bbl_stream_ctrl_session, true},
{"stream-traffic-enabled", bbl_stream_ctrl_traffic_start, false},
{"stream-traffic-start", bbl_stream_ctrl_traffic_start, false},
+23
View File
@@ -1637,6 +1637,29 @@ bbl_session_ctrl_traffic_stop(int fd, uint32_t session_id, json_t *arguments __a
return bbl_session_ctrl_traffic(fd, session_id, false);
}
int
bbl_session_ctrl_traffic_reset(int fd, uint32_t session_id __attribute__((unused)), json_t *arguments __attribute__((unused)))
{
bbl_stream_s *stream;
struct dict_itor *itor;
g_ctx->stats.session_traffic_flows_verified = 0;
/* Iterate over all traffic streams */
itor = dict_itor_new(g_ctx->stream_flow_dict);
dict_itor_first(itor);
for (; dict_itor_valid(itor); dict_itor_next(itor)) {
stream = (bbl_stream_s*)*dict_itor_datum(itor);
if(!stream) {
continue;
}
if(stream->session_traffic) {
bbl_stream_reset(stream);
}
}
dict_itor_free(itor);
return bbl_ctrl_status(fd, "ok", 200, NULL);
}
int
bbl_session_ctrl_traffic_stats(int fd, uint32_t session_id __attribute__((unused)), json_t *arguments __attribute__((unused)))
+3
View File
@@ -423,6 +423,9 @@ bbl_session_ctrl_traffic_start(int fd, uint32_t session_id, json_t *arguments __
int
bbl_session_ctrl_traffic_stop(int fd, uint32_t session_id, json_t *arguments __attribute__((unused)));
int
bbl_session_ctrl_traffic_reset(int fd, uint32_t session_id, json_t *arguments __attribute__((unused)));
int
bbl_session_ctrl_traffic_stats(int fd, uint32_t session_id __attribute__((unused)), json_t *arguments __attribute__((unused)));
+4
View File
@@ -29,6 +29,10 @@
- Disable/stop session traffic
-
- `session-id`
* - `session-traffic-reset`
- Reset all session traffic streams
-
-
* - `session-streams`
- Display session streams
- `session-id`