From 31ad47af33ef91307f5abacef2970fa306b77546 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Fri, 1 Oct 2021 09:51:43 -0400 Subject: [PATCH] TT#136952 split up call info CLI writer Change-Id: I8a2aaa08b2ad1a6d8a3b6a8753b0e6e0248f43d4 --- daemon/cli.c | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/daemon/cli.c b/daemon/cli.c index a0f089f16..624d70d18 100644 --- a/daemon/cli.c +++ b/daemon/cli.c @@ -166,6 +166,11 @@ static const cli_handler_t cli_params_handlers[] = { { NULL, }, }; + +static void cli_list_call_info(struct cli_writer *cw, struct call *c); + + + static void cli_handler_do(const cli_handler_t *handlers, str *instr, struct cli_writer *cw) { @@ -537,14 +542,6 @@ static void cli_incoming_list_offertimeout(str *instr, struct cli_writer *cw) { static void cli_incoming_list_callid(str *instr, struct cli_writer *cw) { struct call *c = 0; - struct call_monologue *ml; - struct call_media *md; - struct packet_stream *ps; - GList *l; - GList *k, *o; - struct timeval tim_result_duration; - struct timeval now; - char *local_addr; if (instr->len == 0) { cw->cw_printf(cw, "%s\n", "More parameters required."); @@ -558,6 +555,23 @@ static void cli_incoming_list_callid(str *instr, struct cli_writer *cw) { return; } + cli_list_call_info(cw, c); + + rwlock_unlock_w(&c->master_lock); // because of call_get(..) + obj_put(c); +} + + +static void cli_list_call_info(struct cli_writer *cw, struct call *c) { + struct call_monologue *ml; + struct call_media *md; + struct packet_stream *ps; + GList *l; + GList *k, *o; + struct timeval tim_result_duration; + struct timeval now; + char *local_addr; + cw->cw_printf(cw, "\ncallid: %s\ndeletionmark: %s\ncreated: %i\nproxy: %s\ntos: %u\nlast_signal: %llu\n" "redis_keyspace: %i\nforeign: %s\n\n", @@ -637,11 +651,9 @@ static void cli_incoming_list_callid(str *instr, struct cli_writer *cw) { } } cw->cw_printf(cw, "\n"); - - rwlock_unlock_w(&c->master_lock); // because of call_get(..) - obj_put(c); } + static void cli_incoming_list_sessions(str *instr, struct cli_writer *cw) { size_t found = 0; bool all = false, own = false;