systemcmds/bsondump: new command line utility (extracted from parameters)

This commit is contained in:
Daniel Agar
2022-12-19 17:09:23 -05:00
parent f5524fa605
commit f2cd7667dc
61 changed files with 286 additions and 194 deletions
-48
View File
@@ -83,7 +83,6 @@ enum class COMPARE_ERROR_LEVEL {
static int do_save(const char *param_file_name);
static int do_save_default();
static int do_dump(const char *param_file_name);
static int do_load(const char *param_file_name);
static int do_import(const char *param_file_name = nullptr);
static int do_show(const char *search_string, bool only_changed);
@@ -136,8 +135,6 @@ $ reboot
PRINT_MODULE_USAGE_ARG("<file>", "File name (use default if not given)", true);
PRINT_MODULE_USAGE_COMMAND_DESCR("save", "Save params to a file");
PRINT_MODULE_USAGE_ARG("<file>", "File name (use default if not given)", true);
PRINT_MODULE_USAGE_COMMAND_DESCR("dump", "Dump params from a file");
PRINT_MODULE_USAGE_ARG("<file>", "File name (use default if not given)", true);
PRINT_MODULE_USAGE_COMMAND_DESCR("select", "Select default file");
PRINT_MODULE_USAGE_ARG("<file>", "File name", true);
@@ -212,15 +209,6 @@ param_main(int argc, char *argv[])
}
}
if (!strcmp(argv[1], "dump")) {
if (argc >= 3) {
return do_dump(argv[2]);
} else {
return do_dump(param_get_default_file());
}
}
if (!strcmp(argv[1], "load")) {
if (argc >= 3) {
return do_load(argv[2]);
@@ -443,42 +431,6 @@ do_save(const char *param_file_name)
return 0;
}
static int
do_dump(const char *param_file_name)
{
int fd = -1;
if (param_file_name) { // passing NULL means to select the flash storage
fd = open(param_file_name, O_RDONLY);
if (fd < 0) {
PX4_ERR("open '%s' failed (%i)", param_file_name, errno);
return 1;
} else {
PX4_INFO_RAW("[param] reading from %s\n\n", param_file_name);
}
}
int result = param_dump(fd);
if (fd >= 0) {
close(fd);
}
if (result < 0) {
if (param_file_name) {
PX4_ERR("reading from '%s' failed (%i)", param_file_name, result);
} else {
PX4_ERR("reading failed (%i)", result);
}
return 1;
}
return 0;
}
static int
do_load(const char *param_file_name)