osmo-trx: add commandline option --vty-ref-xml

The commandline option --vty-ref-xml is needed to enable automatic
generation of the VTY reference manual.

Change-Id: I34dd36183e013ab005f39b235c4ab561590befb7
Related: SYS#4937, OS#1601
This commit is contained in:
Philipp Maier 2020-10-09 20:47:12 +02:00
parent 30863e8720
commit 76795401fb
1 changed files with 15 additions and 3 deletions

View File

@ -247,9 +247,10 @@ static void setup_signal_handlers()
static void print_help()
{
fprintf(stdout, "Options:\n"
" -h, --help This text\n"
" -C, --config Filename The config file to use\n"
" -V, --version Print the version of OsmoTRX\n"
" -h, --help This text\n"
" -C, --config Filename The config file to use\n"
" -V, --version Print the version of OsmoTRX\n"
" --vty-ref-xml Generate the VTY reference XML output and exit.\n"
);
}
@ -266,10 +267,12 @@ static void handle_options(int argc, char **argv, struct trx_ctx* trx)
unsigned int i;
std::vector<std::string> rx_paths, tx_paths;
bool rx_paths_set = false, tx_paths_set = false;
static int long_option = 0;
static struct option long_options[] = {
{"help", 0, 0, 'h'},
{"config", 1, 0, 'C'},
{"version", 0, 0, 'V'},
{"vty-ref-xml", 0, &long_option, 1},
{NULL, 0, 0, 0}
};
@ -280,6 +283,15 @@ static void handle_options(int argc, char **argv, struct trx_ctx* trx)
print_help();
exit(0);
break;
case 0:
switch (long_option) {
case 1:
vty_dump_xml_ref(stdout);
exit(0);
default:
fprintf(stderr, "error parsing cmdline options\n");
exit(2);
}
case 'a':
print_deprecated(option);
osmo_talloc_replace_string(trx, &trx->cfg.dev_args, optarg);