From 271c646d8d5f1ceb0419bd345977d57f10e6cea4 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Fri, 26 Jul 2024 14:30:35 -0400 Subject: [PATCH] MT#55283 add abstract .list_add_string() Change-Id: I487a5c535fc5ccd0b409a6abbcf6ba05b1e63f49 --- daemon/call_interfaces.c | 4 ++-- daemon/control_ng.c | 2 ++ daemon/recording.c | 2 +- include/control_ng.h | 1 + 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/daemon/call_interfaces.c b/daemon/call_interfaces.c index bc9370d31..4a7b1c1cb 100644 --- a/daemon/call_interfaces.c +++ b/daemon/call_interfaces.c @@ -2376,7 +2376,7 @@ static void ng_stats_stream_ssrc(const ng_parser_t *parser, bencode_item_t *dict } } -#define BF_PS(k, f) if (PS_ISSET(ps, f)) bencode_list_add_string(flags, k) +#define BF_PS(k, f) if (PS_ISSET(ps, f)) parser->list_add_string(flags, k) static void ng_stats_stream(const ng_parser_t *parser, bencode_item_t *list, const struct packet_stream *ps, struct call_stats *totals) @@ -2434,7 +2434,7 @@ stats: ng_stats(parser->dict_add_dict(dict, "stats_out"), ps->stats_out, NULL); } -#define BF_M(k, f) if (MEDIA_ISSET(m, f)) bencode_list_add_string(flags, k) +#define BF_M(k, f) if (MEDIA_ISSET(m, f)) parser->list_add_string(flags, k) static void ng_stats_media(const ng_parser_t *parser, bencode_item_t *list, const struct call_media *m, struct call_stats *totals) diff --git a/daemon/control_ng.c b/daemon/control_ng.c index 0ebe8f821..df30ae9a3 100644 --- a/daemon/control_ng.c +++ b/daemon/control_ng.c @@ -147,6 +147,7 @@ const ng_parser_t ng_parser_native = { .dict_add_dict = bencode_dictionary_add_dictionary, .dict_add_list = bencode_dictionary_add_list, .list_add_dict = bencode_list_add_dictionary, + .list_add_string = bencode_list_add_string, }; const ng_parser_t ng_parser_json = { .collapse = bencode_collapse_str_json, @@ -164,6 +165,7 @@ const ng_parser_t ng_parser_json = { .dict_add_dict = bencode_dictionary_add_dictionary, .dict_add_list = bencode_dictionary_add_list, .list_add_dict = bencode_list_add_dictionary, + .list_add_string = bencode_list_add_string, }; diff --git a/daemon/recording.c b/daemon/recording.c index 0ff38bc59..240cc83c3 100644 --- a/daemon/recording.c +++ b/daemon/recording.c @@ -760,7 +760,7 @@ static void response_pcap(struct recording *recording, const ng_parser_t *parser return; bencode_item_t *recordings = parser->dict_add_list(output, "recordings"); - bencode_list_add_string(recordings, recording->pcap.recording_path); + parser->list_add_string(recordings, recording->pcap.recording_path); } diff --git a/include/control_ng.h b/include/control_ng.h index da2d6a17b..cf63adac0 100644 --- a/include/control_ng.h +++ b/include/control_ng.h @@ -128,6 +128,7 @@ struct ng_parser { bencode_item_t *(*dict_add_dict)(bencode_item_t *, const char *); bencode_item_t *(*dict_add_list)(bencode_item_t *, const char *); bencode_item_t *(*list_add_dict)(bencode_item_t *); + void (*list_add_string)(bencode_item_t *, const char *); }; struct ng_parser_ctx { const ng_parser_t *parser;