Make it easier to print the help for select options.
[adu.git] / interactive.c
index 2a59e79dbd62a17dc60e547054cb0a97035f8121..93e4a36b46e66a6481cc70afb91e562b0a26b5ff 100644 (file)
@@ -1,5 +1,6 @@
-#include "format.h"
 #include "adu.h"
+#include "format.h"
+#include "select.h"
 #include "string.h"
 #include "error.h"
 #include "cmdline.h"
@@ -11,7 +12,7 @@ struct interactive_command {
 };
 
 static struct uid_range *admissible_uids;
-static struct select_format_info sfi;
+static struct format_info *fi;
 
 #define INTERACTIVE_COMMANDS \
        INTERACTIVE_COMMAND(dump, "dump the current configuration") \
@@ -49,7 +50,7 @@ static int read_input_line(char *line, size_t size)
 
 static int icom_run(__a_unused char *line)
 {
-       return run_select_query(admissible_uids, &sfi);
+       return run_select_query(admissible_uids, fi);
 }
 
 static int icom_help(__a_unused char *line)
@@ -61,6 +62,11 @@ 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);
@@ -76,7 +82,7 @@ static int icom_set(char *line)
                .check_ambiguity = 0,
                .print_errors = 1
        };
-       return parse_select_options(line, &params, &admissible_uids, &sfi);
+       return parse_select_options(line, &params, &admissible_uids, &fi);
 }
 
 static int icom_dump(__a_unused char *line)