mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-04 20:04:50 +00:00
res_pjsip: add CLI command to show global and system configuration
Added a new CLI command for res_pjsip that shows both global and system configuration settings: pjsip show settings ASTERISK-24918 #close Reported by: Scott Griepentrog Review: https://reviewboard.asterisk.org/r/4597/ ........ Merged revisions 434527 from http://svn.asterisk.org/svn/asterisk/branches/13 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@434528 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -26,6 +26,7 @@
|
||||
#include "include/res_pjsip_private.h"
|
||||
#include "asterisk/threadpool.h"
|
||||
#include "asterisk/dns.h"
|
||||
#include "asterisk/res_pjsip_cli.h"
|
||||
|
||||
#define TIMER_T1_MIN 100
|
||||
#define DEFAULT_TIMER_T1 500
|
||||
@@ -112,6 +113,40 @@ static int system_apply(const struct ast_sorcery *system_sorcery, void *obj)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct system_config *get_system_cfg(void)
|
||||
{
|
||||
struct system_config *cfg;
|
||||
struct ao2_container *systems;
|
||||
systems = ast_sorcery_retrieve_by_fields(system_sorcery, "system",
|
||||
AST_RETRIEVE_FLAG_MULTIPLE | AST_RETRIEVE_FLAG_ALL, NULL);
|
||||
|
||||
if (!systems) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
cfg = ao2_find(systems, NULL, 0);
|
||||
ao2_ref(systems, -1);
|
||||
return cfg;
|
||||
}
|
||||
|
||||
int sip_cli_print_system(struct ast_sip_cli_context *context)
|
||||
{
|
||||
struct system_config *cfg = get_system_cfg();
|
||||
|
||||
if (!cfg) {
|
||||
cfg = ast_sorcery_alloc(system_sorcery, "system", NULL);
|
||||
if (!cfg) {
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
ast_str_append(&context->output_buffer, 0, "\nSystem Settings:\n\n");
|
||||
ast_sip_cli_print_sorcery_objectset(cfg, context, 0);
|
||||
|
||||
ao2_ref(cfg, -1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ast_sip_initialize_system(void)
|
||||
{
|
||||
RAII_VAR(struct ao2_container *, system_configs, NULL, ao2_cleanup);
|
||||
|
Reference in New Issue
Block a user