#include "adu.h"
+#include "format.h"
+#include "select.h"
#include "string.h"
#include "error.h"
#include "cmdline.h"
};
static struct uid_range *admissible_uids;
+static struct format_info *fi;
#define INTERACTIVE_COMMANDS \
INTERACTIVE_COMMAND(dump, "dump the current configuration") \
static int icom_run(__a_unused char *line)
{
- return run_select_query(admissible_uids);
+ return run_select_query(admissible_uids, fi);
}
static int icom_help(__a_unused char *line)
return 1;
}
+void print_interactive_help(void)
+{
+ icom_help(NULL);
+}
+
static int icom_reset(__a_unused char *line)
{
select_cmdline_parser_init(&select_conf);
.check_ambiguity = 0,
.print_errors = 1
};
- return parse_select_options(line, ¶ms, &admissible_uids);
+ return parse_select_options(line, ¶ms, &admissible_uids, &fi);
}
static int icom_dump(__a_unused char *line)
{
- ERROR_LOG("dump: %s\n", select_conf.format_arg);
select_cmdline_parser_dump(stdout, &select_conf);
return 1;
}
char *p = cmd + strcspn(cmd, delim);
int ret = -E_SYNTAX;
- *p = '\0';
- p++;
+ if (*p == '\0')
+ p = NULL;
+ else {
+ *p = '\0';
+ p++;
+ }
for (i = 0; icmds[i].name; i++) {
ERROR_LOG("name: %s, cmd: %s.\n", icmds[i].name, cmd);
if (strcmp(icmds[i].name, cmd))